如何找到sharepoint使用的sql server名称(数据源)?

时间:2009-11-06 12:14:03

标签: c# sharepoint

你们可以帮助我如何以编程方式获取sharepoint使用的sqlserver名称?  是否有任何这样的api提供,就像我已经在sqlnamed实例上安装了sharepoint。 如何获得sqlservername。

提前致谢...

2 个答案:

答案 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有多个名称(如别名),则返回的集合将有多个条目。只需参加第一个系列。