クロス ドメイン要求で動作する WCF DataService を取得しようとしています。WCFサービスをCORSで動作させる方法についてこれを見つけました: http://blogs.microsoft.co.il/blogs/idof/archive/2011/07/02/cross-origin-resource-sharing-cors-and -wcf.aspx
サンプルをダウンロードしましたが、DataService で動作させることができません。サンプル サービスでは機能しますが、私の DataService では機能しません。
これは私の非常に単純な WCF DataService です。
public class TestService : DataService<DataContext>
{
public static void InitializeService(DataServiceConfiguration config)
{
config.UseVerboseErrors = true;
config.SetEntitySetAccessRule("Items", EntitySetRights.All);
config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V3;
}
}
TestService.svc ファイル:
<%@ ServiceHost Language="C#" Factory="WebHttpCors.CorsWebServiceHostFactory, WebHttpCors" Service="MvcApplication1.TestService" %>
DataContext も非常に単純です。
public class DataContext : DbContext
{
public DbSet<Item> Items { get; set; }
}
それでも、プリフライト オプション リクエストは 501 で返されます。CORS を Dataservice で動作させるために欠けているものはありますか?