0

だから私は前にホストされたSharePointサイトで働いていたと私は以下のコード使用してそのサイトに認証されたとき、すべてが正常に働いていた。今のSharePoint Server認証エラー

private static NetworkCredential credentials = new NetworkCredential(username, password, domain); 
private static ClientContext clientContext = new ClientContext("https://thisonesite.com/hosting/151"); 
private static Web site = clientContext.Web; 
private static List list = site.Lists.GetByTitle(listName); 

private static void sharepointLogin() 
{ 
    try 
    { 
     //Loads credentials needed for authentication 
     clientContext.Credentials = credentials; 
     //Loads the site 
     clientContext.Load(site); 
     //Loads the site list 
     clientContext.Load(list); 
     //Executes the previous queries on the server 
     clientContext.ExecuteQuery(); 
     //Writes out the title of the SharePoint site to the console 
     Console.WriteLine("Title: {0}", site.Title); 
    } 
    catch (Exception e) 
    { 
     Console.WriteLine(e.ToString()); 
    } 
} 

を、私は私のために作成されたサンドボックスを持っていたし、私は(手動で)サイトにアクセスできます。しかし、私のC#コードでサイトに認証しようとすると、エラーが発生します。

ユーザー名、パスワード、ドメイン以外は、私が実際に変更したのはprivate static ClientContext clientContext = new ClientContext("http://sandbox");です。

私はコンソールに入るエラーがある:突然このエラーは、新しいSharePointサイトで発生している理由

System.Net.WebException: The underlying connection was closed: A connection that was expected to be kept alive was closed by the server. ---> System.IO.IOException: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host. ---> System.Net.Sockets.SocketException: An existing connection was forcibly closed by the remote host 
at System.Net.Sockets.Socket.Receive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags) 
at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size) 
--- End of inner exception stack trace --- 
at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size) 
at System.Net.PooledStream.Read(Byte[] buffer, Int32 offset, Int32 size) 
at System.Net.Connection.SyncRead(HttpWebRequest request, Boolean userRetrievedStream, Boolean probeRead) 
--- End of inner exception stack trace --- 
at System.Net.HttpWebRequest.GetResponse() 
at Microsoft.SharePoint.Client.SPWebRequestExecutor.Execute() 
at Microsoft.SharePoint.Client.ClientRequest.ExecuteQueryToServer(ChunkStringBuilder sb) 
at Microsoft.SharePoint.Client.ClientRequest.ExecuteQuery() 
at Microsoft.SharePoint.Client.ClientRuntimeContext.ExecuteQuery() 
at Microsoft.SharePoint.Client.ClientContext.ExecuteQuery() 
at ConsoleApp1.SharePointAccess.sharepointLogin() in C:\directortypath 

誰でも知っていますか?

+0

タイトルに「C# - 」のようなタグを付けないでください。すでに[タグ:C#]タグがあります。これは優れています。 –

+0

@John申し訳ありませんが、今後の参考にしておきます。 –

+0

私はあなたが実際に例外を投げている行を調べるためにこのコードを踏んだと仮定しています。どちらですか?また、私は "リスト"変数の定義が表示されません... – meccaneko

答えて

0

は、あなたはすべてのexecuteQuery()

前に資格を必要としますが、別途サイトやリストを読み込む()2のexecuteQueryを必要としています。

clientContext.Credentials = credentials; 
     clientContext.Load(site); 
     clientContext.ExecuteQuery(); 

clientContext.Credentials = credentials; 
     clientContext.Load(list); 
     clientContext.ExecuteQuery();