Я играю с WCF Data Services (ADO.NET Data Services). У меня есть модель каркаса сущностей, указанная в базе данных AdventureWorks.
Когда я отлаживаю свой SVC-файл из Visual Studio, он отлично работает. Я могу сказать /awservice.svc/Customers и получить ожидаемый поток ATOM.
Если я опубликую службу (размещенную в веб-приложении ASP.NET) в IIS7, та же строка запроса возвращает ошибку 500. Сама корневая страница svc работает как положено и успешно возвращает ATOM. Сбой пути / Customers.
Вот как мои гранты выглядят в файле svc:
public class AWService : DataService<AWEntities>
{
public static void InitializeService( DataServiceConfiguration config )
{
config.SetEntitySetAccessRule( "*", EntitySetRights.All );
config.SetServiceOperationAccessRule( "*", ServiceOperationRights.All );
config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V2;
}
}
Обновление: Я включил подробные ошибки и получаю в XML-сообщении следующее:
<innererror>
<message>The underlying provider failed on Open.</message>
<type>System.Data.EntityException</type>
<stacktrace>
at System.Data.EntityClient.EntityConnection.OpenStoreConnectionIf(
...
...
<internalexception>
<message>
Login failed for user 'IIS APPPOOL\DefaultAppPool'.
</message>
<type>System.Data.SqlClient.SqlException</type>
<stacktrace>
at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, ...