最近 用到 c#+ mysql + mybatis.net
这个组合的资料不是很好找 ,先总结一下。
1找到 mybatis.net最好有个例子
http://www.codeproject.com/Articles/894127/WebControls/#_comments 在这里。。。
这是一个mybatisnet 连接sqlserver的例子 只要改到连接 mysql就可以了。
2、修改连接 mysql
首先要下载 mysql-conector-net ,安装,引入mysql.data.dll
修改provider.config ,加入mysql的provider。注意:enable一定要设置为true, provider版本号一定要与dll对应!!!
<provider name="MySql"
description="MySQL, MySQL provider V6.9.5.0"
enabled="true"
assemblyName="MySql.Data, Version=6.9.5.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"
connectionClass="MySql.Data.MySqlClient.MySqlConnection"
commandClass="MySql.Data.MySqlClient.MySqlCommand"
parameterClass="MySql.Data.MySqlClient.MySqlParameter"
parameterDbTypeClass="MySql.Data.MySqlClient.MySqlDbType"
parameterDbTypeProperty="MySqlDbType"
dataAdapterClass="MySql.Data.MySqlClient.MySqlDataAdapter"
commandBuilderClass="MySql.Data.MySqlClient.MySqlCommandBuilder"
usePositionalParameters="false"
useParameterPrefixInSql="true"
useParameterPrefixInParameter="true"
parameterPrefix=" "
allowMARS="false" />
</providers>
3修改sqlmap.config 加入mysql连接字符串
<database>
<provider name="MySql" />
<dataSource name="MySql" connectionString="Host=127.0.0.1;UserName=root;Password=12345678;Database=mybatistest;Port=3306;CharSet=utf8;Allow Zero Datetime=true"/>
</database>
在c#中 要将 provider.config sqlmap.config 的属性 设置为 始终上传 和 内容,将xxx.xml设置为 始终上传和 嵌入的资源。
要注意 <sqlMap embedded="enterprise.xml, MyBatisDataMapper" /> 其中 mybatisdatamapper 为 项目名,弄错了会出现load salmap 在这句上报错!
这几个 配置文件的 说道还是挺多的。要用 xml编辑器或者 notepad++ 保存为 utf-8 无bom格式。、
潜入多个 xml,任何一个 出错都会导致 sqlmap .config 报错。
4修改sqlfile.xml
这个文件的写法有很多,很复杂的规则。目前遇到的是要注意SQL语句传递参数的写法有#value# 和$value$两种。
初步理解#value#会被 换成 ' value', $value$会直接在sql中加入value。
具体细节还在摸索中。