将MySQL数据库列映射到C#对象?

时间:2012-06-18 17:04:22

标签: c# mysql class object mapping

我正在开发一个项目,我在一个类中保存了许多C#对象,如下所示:

public class DatabaseInfo
{
//Fields
public string info1 { get; set; }
public string info2 { get; set; }
public string info3 { get; set; }
}

然后我有一个数据库,它将把这个类中包含的值保存在名为“DatabaseInfo”的表中。我只是希望能够轻松地将类对象映射到数据库字段,以便我可以将数据从对象传递到数据库,任何人都可以帮忙吗?

我也在使用Visual Studio C#和MySQL。

由于

1 个答案:

答案 0 :(得分:0)

听起来你在谈论ORM

您可能希望查看Castle ActiveRecord(基于nHibernate构建)。

如果您使用的是.NET 3.5或4.0,则也可以使用.NET Entity Framework

就个人而言,我更喜欢ActiveRecord,因为我喜欢能够使用代码中的属性来定义映射。实体框架使用映射XML文件(可以使用Visual Studio的GUI设计器进行修改),我发现它有点笨拙(EF专家可能会在这里首先讨论代码。)此外,实体框架非常LINQ重,这是很棒,如果你喜欢LINQ。 ActiveRecord使用标准ActiveRecord patern,或HQL或LINQ - 这为您提供了更多的灵活性。

我不会详细说明,因为我认为这些框架之间已经有很多比较。

我已经在SQL Server和Oracle中使用了Entity Framework,并且发现Oracle支持通常运行良好,但可能没有得到与SQL Server相同的关注度。 NHibernate几乎可以为你想到的任何RDBS提供方言,而且无论你使用什么数据库,我都发现它是一个非常成熟和可靠的平台。