使用属性来序列化通用插入,更新等语句?

时间:2011-06-06 20:47:42

标签: c# .net sql serialization custom-attributes

在我开始创建自己的属性之前,有什么东西可以让我做以下的事情:

[SomeAttribute(TableName = "persons")
public class Person
{
    [SomeMemberAttribute("first_name")]
    public String FirstName { get; set; }

    // etc...
}

这样我可以使用这些属性生成SQL Insert,Update等语句,还可以将datareader反序列化为对象吗?

2 个答案:

答案 0 :(得分:0)

您是否查看过Code Code Entity Framework(AKA Magic Unicorn)。微软正在开发它,我听说过很棒的东西。这是Scott Gu's想法:

http://weblogs.asp.net/scottgu/archive/2010/07/16/code-first-development-with-entity-framework-4.aspx

此外,这是ADO.NET实体框架的主页:

http://msdn.microsoft.com/en-us/data/aa937723

答案 1 :(得分:0)

之前的答案提到可能你的“.Net”版本可能有一些工具来处理你想要的东西,包括ADO.NET实体框架。

如果您拥有Visual Studio .Net的早期版本,或者希望以不同的方式开发应用程序,还有其他方法可以使用Entity或Business Objects。

许多开发人员不是直接在C#中编写对象,也不是从DB中的现有表编写代码,而是使用称为“对象关系映射”的工具来设计实体,程序生成C#(VB.NET) )代码和SQL你需要它的命令。

您可能希望在互联网上搜索有关这些工具的信息,而不是使用您提到的属性,因为如果您需要在C#或表格中添加或删除字段,请添加或删除字段,O.R.M。工具很容易生成代码,并且“手工”编码,更难。