C#中是否可以“键入”很长的时间?

时间:2018-09-22 17:12:30

标签: c#

我在表中使用long作为主键。对于每个具有DataObject.Select(长主键)的表,我都有一个数据对象。

如果我可以输入那么长的时间,这样我就不会将table1的PK传递到table2的Select()中,那就太好了。这样可以消除传递错误外键的常见错误。

除了在课程中包装长篇论文,我猜没有其他办法,但我认为问这个问题不会有任何伤害。有没有一种方法可以在运行时仍然传递很长(原始类型)但在编译时会标记不匹配的地方呢?

public class Subscription {
    public long SubscriptionId { get; }
    public long OrganizationId { get; }

    public static Subscription Select (long subscriptionId) {}
}

public class Organization {
    public long OrganizationId { get; }
    public static Organization Select (long organizationId) {}
}

在上面,任何长度都可以传入。但是,如果我打电话给我:

Organization org = Organization.Select(subscription.SubscriptionId);
编译并运行的

。但这是错误的。我宁愿收到编译错误,因为正确的调用是:

Organization org = Organization.Select(subscription.OrganizationId)

1 个答案:

答案 0 :(得分:3)

我建议您创建两个结构,每个结构都有一个public long字段,然后应该定义方法以将这两个不同的结构用作参数。然后,如果您错了,编译器会告诉您。

相关问题