Subsonic 3:SimpleRepository。 如何将枚举映射到表列
我有一个数据库表(Profile)来描述一个人。 该表有一列“性别”(int)。 在 .NET 部分中,我有:
public enum Sex { Male = 1, Female = 2 }
public class Profile{
public int ID {get; set;}
public Sex Sex {get; set;}
}
...
SimpleRepository _repo = new SimpleRepository("ConnectionString");
_repo.Add<Profile>(profile);
在此操作之后 Subsonic 插入一个新行,但“性别”字段为 NULL。 我尝试了“性别”列的 INT 和 VARCHAR 类型,但没有任何结果。 我还尝试了枚举的另一个名称,例如“SexEnum”。 你有什么想法? 可能需要某种名称约定或表列的特殊类型。 先感谢您。
I have a DB table (Profile) to describe a person. This table has a column "Sex" (int).
In .NET part I have:
public enum Sex { Male = 1, Female = 2 }
public class Profile{
public int ID {get; set;}
public Sex Sex {get; set;}
}
...
SimpleRepository _repo = new SimpleRepository("ConnectionString");
_repo.Add<Profile>(profile);
After this operation Subsonic inserts a new row, but a "Sex" field is NULL. I tried INT and VARCHAR type for "Sex" column but without any result. Also I tried another name for enum, for example "SexEnum".
Do you have any ideas? May be some name convention is needed or a special type for a table column.
Thank you in advance.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我假设您习惯使用 .nettiers 之类的东西来从查找表生成枚举,但是 SubSonic 不提供此功能。
如果表中有 SexId 列,您可以执行以下操作(需要添加空检查):
I assume you're used to using something like .nettiers that will generate enums from lookup tables, however SubSonic does not provide this functionality.
If you have a SexId column in your table you could do the following (null checks need adding):