Хорошо, я просмотрел сеть, BOL, различные форумы, и я не ближе к ответу ... надеюсь, вы, ребята, можете протянуть руку помощи ...
У нас есть около дюжины SQL-серверов (около 2 тыс., 2005 г.) в сети. Я использую объекты SMO в приложении .NET, чтобы получить некоторую стандартную информацию. Моя проблема сводится к отсутствующей DLL - Microsoft.SqlServer.BatchParser.dll. Однако эта DLL не поставляется с другими библиотеками SQL (Microsoft.SqlServer.ConnectionInfo.dll, Microsoft.SqlServer.Smo.dll, Microsoft.SqlServer.SmoEnum.dll, Microsoft.SqlServer.SqlEnum.dll и т. Д.) , Я также скачал пакет функций SS2005 с сайта Microsoft, который включает объекты SMO, но все равно не повезло.
Следующий код работает, если я не раскомментирую строку, которая в данный момент комментируется, и в этом случае я получаю ошибку ниже:
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, версия = 9.0.242.0, культура = нейтральная, PublicKeyToken = 89845dcd8080cc91» или одна из ее зависимостей. Система не может найти указанный файл.
Обратите внимание, я также пробовал это из служб SSIS, используя VB.NET, то же поведение.
Любые мысли приветствуются.
Спасибо.