SqlMetal是跟随VS发布的一个自动工具,可以用来生成数据库的Linq代码。

这是中文版的帮助文件。

SqlMetal [选项] [<输入文件>]
为 .NET Framework 的 LINQ to SQL 组件生成代码和映射。SqlMetal 能够: - 依据数据库生成源代码及映射属性或映射文件。 - 依据数据库生成中间 dbml 文件以进行自定义。 - 依据 dbml 文件生成代码及映射属性或映射文件。
选项: /server:<名称> 数据库服务器名称。 /database:<名称> 服务器上的数据库目录。 /user:<名称> 登录用户 ID (默认值: 使用 Windows 身份验证)。 /password:<密码> 登录密码(默认值: 使用 Windows 身份验证)。 /conn:<连接字符串> 数据库连接字符串。不能将连接字符串与 /server、/database、/user 或 /password 选项一起使用。 /timeout:<秒数> 要在 SqlMetal 访问数据库时使用的超时值(默认值: 0,表示无限期)。
/views 提取数据库视图。 /functions 提取数据库函数。 /sprocs 提取存储过程。
/dbml[:文件] 输出为 dbml。不能与 /map 选项一起使用。 /code[:文件] 输出为源代码。不能与 /dbml 选项一起使用。 /map[:文件] 生成映射文件而不是属性。不能与 /dbml 选项一起使用。
/language:<语言> 源代码语言: VB 或 C# (默认值: 派生自代码文件名的扩展名)。 /namespace:<名称> 生成的代码的命名空间(默认值: 无命名空间)。 /context:<类型> 数据上下文类的名称(默认值: 派生自数据库名称)。 /entitybase:<类型> 生成的代码中的实体类的基类(默认值: 实体没有基类)。 /pluralize 使用英语语言规则自动设置类和成员名称的单复数形式。 /serialization:<选项> 生成可序列化的类: None 或 Unidirectional (默认值: None)。 /provider:<类型> 提供程序类型: SQLCompact、SQL2000、SQL2005 或 SQL2008。(默认值: 提供程序是在运行时确定的)。
<输入文件> 可以是 SqlExpress mdf 文件、SqlCE sdf 文件或 dbml 中间文件。
通过 SqlServer 创建代码: SqlMetal /server:myserver /database:northwind /code:nwind.cs /namespace:nwind
通过 SqlServer 生成中间 dbml 文件: SqlMetal /server:myserver /database:northwind /dbml:northwind.dbml /namespace:nwind
通过 dbml 生成包含外部映射的代码: SqlMetal /code:nwind.cs /map:nwind.map northwind.dbml
通过 SqlCE sdf 文件生成 dbml: SqlMetal /dbml:northwind.dbml northwind.sdf
通过 SqlExpress 本地服务器生成 dbml: SqlMetal /server:sqlexpress /database:northwind /dbml:northwind.dbml
通过在命令行中使用连接字符串生成 dbml: SqlMetal /conn:"server='myserver'; database='northwind'" /dbml:northwind.dbml

例子: 生成包含存储过程的Dbml文件

C:temp>sqlmetal /server:localhost /database:tsx /dbml:tsx.dbml /namespace:tsx  /sprocs

IF $(ConfigurationName) == VO "%PROGRAMFILES%\Microsoft SDKs\Windows\v6.0A\Bin\sqlmetal"

/server:DETIAN-SCL07H66 /database:test /user:sa /password:hello /dbml:$(ProjectDir)LinqData\DAO.dbml /sprocs /functions /entitybase:System.Data.Linq.DataContext

IF $(ConfigurationName) == VO "%PROGRAMFILES%\Microsoft SDKs\Windows\v6.0A\Bin\sqlmetal"

/namespace:LinqData /code:$(ProjectDir)LinqData\DAO.designer.cs /language:csharp /context:DAODataContext

/entitybase:System.Data.Linq.DataContext /serialization:Unidirectional $(ProjectDir)LinqData\DAO.dbml

sqlMetal用法和例子 自定义DBML的更多相关文章

  1. 我教女朋友学编程html系列(5) html中table的用法和例子

    女朋友不是学计算机的,但是现在从事计算机行业,做技术支持,她想学习编程,因此我打算每天教她一点点,日积月累,带她学习编程,如果其他初学者感兴趣,可以跟着学. 为了将table介绍的简单.生动,具有实战 ...

  2. C++ string的用法和例子

    使用场合: string是C++标准库的一个重要的部分,主要用于字符串处理.可以使用输入输出流方式直接进行操作,也可以通过文件等手段进行操作.同时C++的算法库对string也有着很好的支持,而且st ...

  3. CodeSmith 基础用法和例子

    〇.            前言 一.            工具设置 CodeSmith默认是不支持中文的,那么我们必须要先设置使其支持中文显示,保存.并且要能够在生成文件中支持中文. [Tools ...

  4. [UE4]C++ string的用法和例子

    使用场合: string是C++标准库的一个重要的部分,主要用于字符串处理.可以使用输入输出流方式直接进行操作,也可以通过文件等手段进行操作.同时C++的算法库对string也有着很好的支持,而且st ...

  5. @Helper辅助方法和@functions自定义函数

    1.首先说下@helper辅助方法,当我们在多个视图中共用相同的方法的时候,可以把此方法剥离出来放到一个位置,此时就可以用到@Helper辅助方法,首先我们在解决方案右键添加 App_Code文件夹, ...

  6. Mxnet:以全连接层为例子自定义新的操作(层)

    https://blog.csdn.net/a350203223/article/details/77449630 在使用深度学习平台时,光会使用其中已定义好的操作有时候是满足不了实际使用的,一般需要 ...

  7. Scala 孤立对象和单例对象方法体的用法和例子

    [学习笔记] 1  以object关键字修饰一个类名,这种语法叫做孤立对象,这个对象是单例的. 相当于将单例类和单例对象同时定义.相当于java中的单例,即在内存中只会存在一个Test3实例.创建一个 ...

  8. C++STL之Vector向量详解,用法和例子 一起学习 一起加油

                                                                                    C++ STL之vector用法总结 1 ...

  9. 关于EXCEPT和INTERSECT的用法和例子

    EXCEPT是指在第一个集合中存在,但是不存在于第二个集合中的数据. INTERSECT是指在两个集合中都存在的数据. select qq from #table1 如下: select qq fro ...

随机推荐

  1. FatFsVersion0.01源码分析

    目录 一.API的函数功能简述 二.FATFS主要数据结构 1.FAT32文件系统的结构 2.FATFS主要数据结构 ①   FATFS ②   DIR ③  FIL ④  FILINFO ⑤  wi ...

  2. Lucene基础(四)-- 结合数据库使用

    需求 很多时候我们在用数据库的需要使用模糊查询,我们一般会使用like语句来做,然而这样的做的效率不是很多(很抱歉我们亲自去测,很多都这么说的),那么使用Lucene来检索的话,效率会高很多. luc ...

  3. writeToFile 读写文件问题

    关于 writeToFile 读写文件:当字典中键值对以 Model(例如:studentModel)为值时发现 Dictionary 调用 writeToFile 方法无法生成 plist 文件,经 ...

  4. uva 104 Bandwidth

    题意: 给一个图, 将其节点以任一序列排列. 1)计算每个节点距离相邻节点的最大距离 dis[i] 2)计算出当前序列中, 所有节点的dis[i], 并求出最大的dis[i] : max_dis 求最 ...

  5. 解决Matlab启动时 " Can't check 9.0 VCRTs The application has failed to start because……" 的错误

    注:转载或引用请注明出处 今天在winserver 2012 r2 上安装matlab 2016b , 安装完成运行时提示: ERROR: Cnn't check 9.0 VCRTs <star ...

  6. [转载]C# 中对html 标签过滤

    private string FilterHTML(string html) { System.Text.RegularExpressions.Regex regex1 = new System.Te ...

  7. HTTP错误代码详细介绍

    HTTP 400 - 请求无效 HTTP 401.1 - 未授权:登录失败 HTTP 401.2 - 未授权:服务器配置问题导致登录失败 HTTP 401.3 - ACL 禁止访问资源 HTTP 40 ...

  8. jsp include包含html页面产生的乱码问题

    大家都知道在jsp中include的有两种方式,一种是<jsp:include page="">,另一种是<%@ include file="" ...

  9. ANDROID_MARS学习笔记_S01原始版_023_MP3PLAYER005_用广播BroacastReciever实现后台播放不更新歌词

    一.代码流程1.自定义一个AppConstant.LRC_MESSAGE_ACTION字符串表示广播"更新歌词" 2.在PlayerActivity的onResume()注册Bro ...

  10. AD设计中,三种大面积覆铜的区别

    在AD设计中,主要有三种大面积覆铜方式,分别是Fill(铜皮) Polygon Pour(灌铜)和Plane(平面层),这三种方式刚开始的时候没有细细区分,现在分别应用了一下, 总结如下,欢迎指正 F ...