我一直试图让Linq在Ubuntu上使用Mysql,在存储库(2.10.5)中使用Mono版本,我只会头疼.
首先,我不得不修改MySQL提供程序sqlmetal.exe.config,因为它默认设置为旧的和不推荐使用的版本,我设法让它工作设置我在这台机器上安装的MySQL连接器(来自存储库) )作为sqlmetal的提供者.我为我的目标数据库生成了带有sqlmetal的DataContext,这似乎有效,但我不完全确定.
在生成DataContext之后,我在monodevelop上创建了一个新项目来测试它,起初我尝试使用一个简单的MysqlConenction并检查连接器是否正常工作,我不得不将连接器组件添加到项目中,但这没关系,它工作正常.然后我尝试使用此代码使用DataContext进行连接:
using System;
using System.Linq;
using System.Data.Linq;
using MySql.Data.MySqlClient;
namespace test
{
public class test
{
public static void Main (String[] args)
{
Test db = new Test (new MySqlConnection("Userid=root;database=test;server=localhost;password=password"));
foreach(var tr in db.Users)
{
Console.Write(tr.Username);
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
此代码失败.似乎Linq正在为MySQL生成错误的SQL代码,至少它抛出的异常似乎是这样说的:
Unhandled Exception: MySql.Data.MySqlClient.MySqlException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '[Id], [Password], [Username]
FROM [test].[Users]' at line 1 …Run Code Online (Sandbox Code Playgroud) 我在一个非常简单的快递应用程序上得到了一个非常愚蠢的错误.我使用jade作为视图引擎,我这样说是为了防止它与问题有关.
我正在尝试检查变量是否已定义以呈现一个或另一个,但只是检查该变量会触发"变量未定义"错误.这不是我期望的行为,所以我想知道我做错了什么.这是我正在使用的视图代码:
h1= title
- if (user)
p Welcome to #{title}, #{user.username}
- else
p Welcome to #{title}
Run Code Online (Sandbox Code Playgroud)
这样做的正确方法是什么?必须有一种方法来检查视图上的变量.: - /
编辑:忘记说错误被触发到哪一行,它在第二行" - if(user)"触发.
我在使用iOS safari访问我们的网站时遇到错误,我设法在safari上使用远程调试器找到错误,这似乎说SSL证书是错误的,但错误非常混乱:
[Error] Failed to load resource: The certificate for this server is invalid.
You might be connecting to a server https://myserver.mydomain.com:36000/something that is pretending to be “myserver.mydomain.com”
which could put your confidential information at risk. (connect, line 0)
Run Code Online (Sandbox Code Playgroud)
有谁知道问题可能是什么?我最好的猜测是url上的端口可能是问题,但据我所知它应该是有效的.
我没有在我测试的任何其他浏览器上得到此错误,虽然IE9上有一个错误,我认为可能是同样的问题,因为它似乎是在触及相同的URL时触发,但是没有有用的信息:
Error: Access is denied.
undefined
Run Code Online (Sandbox Code Playgroud)
(我在IE9上没有启用"跨域访问数据源"选项,因此它可能没有关联)
任何线索如何调试这个?