我正在创建一个小型数据库应用程序来自学以下概念
- C# 编程
- .Net 3.5 框架
- WPF
- LINQ ORM
我想使用 Microsoft Access 作为数据库,但似乎找不到任何提及是否可以使用 SQLMetal 从 Microsoft Access 数据库生成 ORM 代码。
有谁知道这是否可能?
如果没有,我可以使用任何小型数据库或嵌入式数据库吗?我认为 SQL express 在这一点上对我来说太过分了。
我正在创建一个小型数据库应用程序来自学以下概念
我想使用 Microsoft Access 作为数据库,但似乎找不到任何提及是否可以使用 SQLMetal 从 Microsoft Access 数据库生成 ORM 代码。
有谁知道这是否可能?
如果没有,我可以使用任何小型数据库或嵌入式数据库吗?我认为 SQL express 在这一点上对我来说太过分了。
对于嵌入式数据库,您可以使用SQL Server Compact Edition。与 SQL Server Express 不同,它与 LINQ to SQL 设计器不兼容,但与命令行 SQLMetal 完全兼容。与 SQL Express 相比,它有一些优势,例如能够使用嵌入式或从文件运行。Microsoft 有一个非常方便的图表,概述了Express 和 Compact 之间的区别。
如果你想学习现实世界的技能,我认为 SQL Express 不会过分——事实上恰恰相反!那将是我的选择,无论我选择什么,我都会远离 Access。
祝你好运
AFAIK,Linq to SQL 是特定于 MSSQL 服务器提供程序的。老实说,SQL Express 在今天的机器上是相当轻量级的。
顺便说一句,不要将 LINQ 与 Linq to SQL 混淆。Linq 是为 .NET(除其他外)提供“查询”之类的支持的底层技术,其中 L2S 实际上是构建在 Linq 之上的数据访问技术。Vanilla Linq 可以与任何 ADO.NET 提供程序一起使用,当然 Access 就是其中之一。
实体框架也可以与任何兼容的提供程序一起使用,但如果 SQLExpress 对你来说太重了,那么我不建议你走这条路……
感谢所有的回复。没想到这么快就得到答案。对于我的测试应用程序,我认为 SQL Server Compact Edition 将是可行的方法。我基本上是在创建一个类似于 Microsoft Money 的资金管理应用程序,虽然它是一种学习技能的练习,但我最终还是想用它来管理我的财务(只要它不太垃圾!)
这就是为什么我认为一个完全成熟的数据库会是矫枉过正。