好的,我已经搜索了网络,BOL,各种论坛,但我离答案还很近……希望你们这些好人可以伸出援助之手……
我们在网络上有十几个 SQL Server(一些 2k,一些 2005)。我在 .NET 应用程序中使用 SMO 对象来获取一些标准信息。我的问题似乎归结为缺少 DLL - Microsoft.SqlServer.BatchParser.dll。但是,此 DLL 不附带其他 SQL DLL(Microsoft.SqlServer.ConnectionInfo.dll、Microsoft.SqlServer.Smo.dll、Microsoft.SqlServer.SmoEnum.dll、Microsoft.SqlServer.SqlEnum.dll 等...) . 我还从 Microsoft 的站点下载了包含 SMO 对象的 SS2005 功能包,但仍然没有运气。
以下代码有效,除非我取消注释当前注释的行,在这种情况下,我会收到以下错误:
protected void btnArchive_Click(object sender, EventArgs e)
{
ServerConnection conn = new ServerConnection("my_server");
conn.LoginSecure = false;
conn.Login = "my_login";
conn.Password = "my_password";
Server s = new Server(conn);
Database d = s.Databases["my_database"];
//Table tbl = d.Tables["my_table"];
Response.Write(s.Name + " " + s.Information.RootDirectory + " " + d.CreateDate.ToShortDateString());
conn.Disconnect();
}
错误:无法加载文件或程序集“Microsoft.SqlServer.BatchParser,Version=9.0.242.0,Culture=neutral,PublicKeyToken=89845dcd8080cc91”或其依赖项之一。该系统找不到指定的文件。
请注意,我也使用 VB.NET 从 SSIS 尝试过这个,同样的行为。
任何想法将不胜感激。
谢谢。