你们可以帮助我如何以编程方式获取sharepoint使用的sqlserver名称? 是否有任何这样的api提供,就像我已经在sqlnamed实例上安装了sharepoint。 如何获得sqlservername。
提前致谢...
答案 0 :(得分:5)
此代码可以帮助您,您需要从SharePoint Server或WFE服务器运行此代码。
public String GetSharePointSQLServerName()
{
String sServerName = "notFound";
foreach (var item in SPFarm.Local.Servers)
{
foreach (var svc in item.ServiceInstances)
{
if (svc is SPDatabaseServiceInstance)
{
SPDatabaseServiceInstance s = svc as SPDatabaseServiceInstance;
sServerName = item.DisplayName+"\\"+s.Instance;
}
}
}
return sServerName;
}
答案 1 :(得分:0)
那么,如果您没有命名数据库实例,该怎么办?
更好地使用它:
var serverNames = from server in SPFarm.Local.Servers
from service in server.ServiceInstances
where service is SPDatabaseServiceInstance
let dbInstance = (SPDatabaseServiceInstance) service
select dbInstance.NormalizedDataSource;
如果您的sql server有多个名称(如别名),则返回的集合将有多个条目。只需参加第一个系列。