我有一个项目,其中我想使用一些.NET 4.0功能,但核心要求是我可以使用针对2.X编译的System.Data.SQLite框架.我看到提到这是可能的,例如这里接受的答案,但我不知道如何实际实现这一点.
当我在参考2.X程序集时尝试运行我的4.0项目时,我得到:
混合模式程序集是针对运行时的版本"v2.0.50727"构建的,如果没有其他配置信息,则无法在4.0运行时加载.
什么"附加配置"是必要的?
我需要在C#程序中执行大量的SQL语句(创建一堆表,视图和存储过程).
这些语句需要用GO语句分隔,但SqlCommand.ExecuteNonQuery()不喜欢GO语句.我想我将发布以供参考的解决方案是将SQL字符串拆分为GO行,并分别执行每个批处理.
有更简单/更好的方法吗?
执行以下SQL:
drop function f
go
Run Code Online (Sandbox Code Playgroud)
在MS Sql Server Management Studio中给我这个解析错误:
消息102,级别15,状态1,行1'go'附近的语法不正确.
为什么?
如果我打开一个新选项卡并将SQL复制/粘贴到其中,它也会失败.但是,如果我打开一个新选项卡并完全重新键入SQL,它可以正常工作.
我有 ac# 函数,它在输入端查找文本模式并进行一些处理。(我使用的是 3.5 版本的 .net 框架)
public void func(string s)
{
Regex r = new Regex("^\s*Pattern\s*$", RegexOptions.Multiline | RegexOptions.ExplicitCapture );
Match m = r.Match(s);
//Do something with m
}
Run Code Online (Sandbox Code Playgroud)
该函数的使用可能如下所示
string s = "Pattern \n Pattern \n non-Pattern";
func(s);
Run Code Online (Sandbox Code Playgroud)
但是,我发现有时我的输入看起来更像这样
string s = "Pattern \r Pattern \r non-Pattern"
func(s);
Run Code Online (Sandbox Code Playgroud)
它没有被匹配。有没有办法在正则表达式中\r像 a 一样对待\n?我想我总是可以用\rs替换所有的\ns,但我希望如果我可以让正则表达式一次性完成所有操作,我可以最大限度地减少操作。