2010-07-17 2 views
1

У меня есть относительно простое приложение ASP.net MVC 2, использующее SubSonic. Все, кажется, работает хорошо на местном уровне, но когда я развернуть его WinHost, я получаю исключение, как так:Проблема LINQ при развертывании в WinHost

System.TypeAccessException: Attempt by method 'DynamicClass.lambda_method(System.Runtime.CompilerServices.Closure, System.Data.Common.DbDataReader)' to access type 'System.RuntimeType' failed. 
    at lambda_method(Closure , DbDataReader) 
    at SubSonic.Linq.Structure.DbQueryProvider.Project[T](DbDataReader reader, Func`2 fnProjector) 
    at SubSonic.Linq.Structure.DbQueryProvider.Execute[T](QueryCommand`1 query, Object[] paramValues) 
    at lambda_method(Closure) 
    at SubSonic.Linq.Structure.DbQueryProvider.Execute(Expression expression) 
    at SubSonic.Linq.Structure.QueryProvider.System.Linq.IQueryProvider.Execute[S](Expression expression) 
    at System.Linq.Queryable.Count[TSource](IQueryable`1 source) 
    at Foo.Web.Data.Baz.SingleOrDefault(Expression`1 expression) 
    at Foo.Web.Models.Data.DataFacade.GetBar(Int32 id) 
    at Foo.Web.Controllers.Baz.Edit(Int32 id) 
    at lambda_method(Closure , ControllerBase , Object[]) 

Это, безусловно, голова скребок, как я не знаю, что конкретно я делаю неправильно. Мое предположение заключается в том, что его окружающая среда (возможно, основанная на разрешениях). Я не уверен, что это проблема с запросом LINQ, SubSonic или что-то особенное для WinHost. Кто-нибудь есть идея о том, как я должен подойти к этому или где/в чем проблема? Еще раз приложение работает нормально локально.

Примечание: имена объектов/метод изменяются в образце

ответ

3

Это похоже на проблему среднего доверия. Текущие выпуски дозвуковых не поддерживают средний уровень доверия. Если вы вытащить последнее из github (http://github.com/subsonic/SubSonic-3.0), то, вероятно, изменение 10 июля обеспечило доверие к среде. Я пробовал это сам, но источник довольно надежный.

+0

Я согласен с ответом, но в итоге решил проблему, перейдя на другой узел. Я не смог точно определить точный вопрос (но я считаю, что доверие к среде было основной причиной). – rifferte

0

Вы пытались изменить уровень доверия вашего приложения?

Смежные вопросы