我想强制子类定义一个常量值.
喜欢
const string SomeConstantEverySubclassMustDefine = "abc";
Run Code Online (Sandbox Code Playgroud)
我需要它,因为我需要将它绑定到Type,而不是实例,并且您不能覆盖静态方法/属性iirc.
我真的想对这些常量进行编译时检查.
让我更详细地解释一下:
我们的域模型中的某些类是特殊的,您可以根据类型为它们采取某些操作.因此逻辑与类型有关.要采取的操作需要绑定到类型的字符串.我确实可以每次创建一个实例作为变通方法并声明一个抽象属性,但这不是我想要的.我想在编译时强制执行字符串的声明,只是为了确定.
我们有一个Access-Application,它在某些客户端上不起作用,主要是因为引用被破坏了.例如,当您使用访问运行时2007启动访问应用程序但安装了版本2003或2000的办公室时,就会发生这种情况.左/右/修剪等功能就此停止工作.
我认为解决这个问题的唯一方法是以编程方式检查安装了哪个办公室版本并以编程方式添加引用,因为在这些异构环境中我们无法控制用户安装的内容.具体来说,我需要引用Excel和Word的Microsoft Office对象库.
但我既没有所有办公室版本的指导,也没有线索如何自动检查它们.
将数据列绑定到数据源中可能存在或可能不存在的属性的最佳方法是什么?
例如,如果您有一个类层次结构,其中某些子级可能属于具有该属性的子类型,则会发生这种情况.数据源包含各种子类类型.
<DataColumn outputText="#{item.property}" />
Run Code Online (Sandbox Code Playgroud)
当其中一个子类中不存在该属性时,始终会产生一个PropertyNotFoundException.我不想在基类中包含该属性,因为根据业务规则它不应该存在.
你会如何解决这个问题?
由于Windows Vista Sidebar和Windows 7都有可用的小工具,我真的很想知道你是否可以将它们集成到你的.NET应用程序中.我想要一个类似的功能,并可能将现有的小工具用于我的应用程序.
可以吗?
我使用FluentNhibernate,我看到NHibernate在映射关联的引用时执行了很多查询NotFound.Ignore().
由于遗留数据库的参照完整性有点糟糕,我想知道是否有解决方法,或者是否有可以使用的替代映射.
例:
//no query when loading the entity
References<User>(x => x.User, "UserId").LazyLoad().Nullable();
//performs a hundred queries when I load my entities
References<User>(x => x.User, "UserId").LazyLoad().Nullable().NotFound.Ignore();
Run Code Online (Sandbox Code Playgroud)