![]() |
1
4
试试这个
然后您可以收集一些可共享的,例如
编辑: 回应你的评论 在您的存储库中,您将不再针对评估类进行编程。相反,您将重新编程它实现的接口中的方法: 而不是:
你可能有:
存储库的实现可能类似于:
|
![]() |
2
1
你的问题还不清楚,但根据我的理解,你在寻找物体的类型。这是你的做法。
如果需要基类/父类中的子类类型,请按如下所示更新评估类。
|
![]() |
3
1
这听起来是一个非常好的泛型候选,许多存储库和ORM框架都使用它们。
您可能还需要一个EvaluationBase类来处理公共函数,并将您的接口约束为只接受EvaluationBase类:
它可以节省识别和跟踪对象类型的大部分或全部问题。 |
![]() |
4
0
|
![]() |
5
0
我将您的问题解释为询问如何在不“混乱”地打开子对象类型的情况下发送自定义保存逻辑。如果您只需要一种简单的方法来gt类型A参数,则可以使用
有几种基于运行时类型的调度逻辑方法。
一个是你可以创建一个调度字典
在.NET 4中,您可以使用
注意如何
|
![]() |
6
0
您可以将方法设置为虚拟的-调用将根据实际的运行时类型调度到正确的方法。
也许您也可以将基类抽象化。此外,您通常应该避免将字段公开,这可能会将维护代码变成一场噩梦,因此我在示例中使用了属性。 |
![]() |
user1946932 · .Net正则表达式在所有字符前添加空格 6 月前 |
![]() |
TSDrake · 发布ASP。没有特定文件夹的.NET应用程序 7 月前 |
![]() |
Vengat Ramanan · 用户登录Asp时隐藏导航和页脚。网络核心 11 月前 |
![]() |
ramamoorthy_villi · 输入验证错误外键字段 11 月前 |