我正在尝试使用C#连接到SQL服务器。它在Windows中运行良好。问题是当我使用Mono在Ubuntu 16中运行它时它不起作用并且发生了排序错误。这是错误:
这是我的整个C#代码:
private SqlConnection CreareConnection()
{
try
{
SqlConnection conn = new SqlConnection("data source=192.168.1.25;initial catalog=MesterCoin;persist security info=True;user id=sa;password=147;");
conn.Open();
return conn;
}
catch (Exception ex){throw ex;}
}
public List<Balance> GetUnAssigned()
{
var result = new List<Balance>();
try
{
var cmd = new SqlCommand("select * from Balance", CreareConnection());
var rows = cmd.ExecuteReader();
while (rows.Read())
result.Add(new Balance() { Id = int.Parse(rows["Id"].ToString()) , Address = rows["Address"].ToString() });
}
catch (Exception ex) { throw ex; }
return result;
}
我已经使用以下链接安装了mono:http://www.mono-project.com/download/#download-lin和SQL服务器版本是2014.该程序适用于拉丁语排序规则,但不适用于阿拉伯语和波斯语。
Mono是一个很棒的系统,但是开发人员只能同时实现这么多,看看他们的SQLClient他们已经走了很长的路,但是有些功能还没有完全与Windows相提并论。
如果这是一个新项目,并且不是超级复杂可能看看.NET Core - 它现在在Ubuntu上运行而不必运行单声道。
除此之外,您可能会陷入一种可怕的情况:要么保持Windows,放弃当前的排序规则或者查看另一个数据库引擎:\