如果我们有一个表已经有一个字段标记为允许null(在SQL服务器),由于某种原因,我想映射这些字段到一个类在C#代码但保持我的变量不可空(离散值),如果我在db中为null,则在c#中将此变量设为其默认值。如何将可空列映射为不可为空的变量?
例如:
Table Employee (
ID int Not NULL,
Name nvarchar(256) NOT NULL,
Age int NULL)
现在我想这个表映射到这个类
class Employee {
public int ID {get; set;}
public string Name {get; set;}
public int Age {get; set;}
}
我没有问题为使用的LINQ to SQL或NHibernate的,要么会做工作。
谁能给我这个
阿的解决方案,顺便说一句,如果分贝的时期字段为空我想要的年龄变量带参数的默认值(例如0)
但这意味着我必须有两个属性为数据库中的每个字段,有没有更好的方法? –
dbml代码生成器为您创建私有属性。你只需要在我的回答中写下小包装。由于RawAge是私人的,使用代码不会看到它,并且它不会在智能感知中显示。从技术上讲,你说的有两个属性,但只有一个是可见的。 – hatchet
我试过这个解决方案,但datacontext(在Linq到SQL),无法映射私人成员,即使我用ColumnAttribute装饰它,任何想法? –