過去数週間、私が何度も直面してきた問題の 1 つは、SharePoint でリスト アイテムの値を検索しようとして、不正な要求エラーが発生し続けることでした。問題の原因となっている 2 つの記号がありました。1 つは anh & 記号で何かを検索できなかったことで、もう 1 つは / (スラッシュ) でした。
私のコードは次のようになりました:
ServiceContext context = new ServiceContext(new Uri("http://URL/_vti_bin/listdata.svc"));
context.Credentials = CredentialCache.DefaultCredentials;
var requestType = (System.Data.Services.Client.DataServiceQuery<ListTypeValue>)context.ListType
.Where(v => v.Value.Equals(search));
インターネットを検索した後、IIS 設定を変更するか、それを ASCII Html 値に変換するという以外に、有効なものは何も返されませんでした (注: & を %27 に変換すると、依然として不正な要求エラーが発生します)。