Я обновляю свое веб-приложение с версии ASP.NET MVC .NET Framework до ASP.NET Core. Я обработал все ошибки сборки C # и Razor, и теперь я пытаюсь запустить приложение в первый раз. Когда я делаю какие-либо вызовы в драйвер C # MongoDB:
public static Analytics Find(Enums.Platform platform, DateTime date) {
var builder = Filter;
var filters = builder.Eq("Platform", platform) & builder.Eq("Date", date);
return Collection().Find(filters).FirstOrDefault();// Exception thrown here.
}
Это ошибки:
System.TypeLoadException HResult = 0x80131522 Сообщение = Не удалось загрузить
введите 'System.Runtime.Remoting.Messaging.CallContext' из сборки
'mscorlib, версия = 4.0.0.0, культура = нейтральная,
PublicKeyToken = b77a5c561934e089. Источник = MongoDB.Driver.Core
StackTrace: в
MongoDB.Driver.Core.Events.EventContext.AsyncLocal 1.get_Value() at
MongoDB.Driver.Core.Events.EventContext.BeginOperation(Nullable
1
идентификатор операции) в
MongoDB.Driver.Core.Operations.FindCommandOperation 1.Execute(IReadBinding
binding, CancellationToken cancellationToken) at
MongoDB.Driver.Core.Operations.FindOperation
1.Execute (IReadBinding
обязательный, CancellationToken CancellationToken) в
MongoDB.Driver.OperationExecutor.ExecuteReadOperation [TResult] (IReadBinding
привязка, IReadOperation 1 operation, CancellationToken
cancellationToken) at
MongoDB.Driver.MongoCollectionImpl
1.ExecuteReadOperation [TResult] (IClientSessionHandle
сеанс, IReadOperation 1 operation, ReadPreference readPreference,
CancellationToken cancellationToken) at
MongoDB.Driver.MongoCollectionImpl
1.ExecuteReadOperation [TResult] (IClientSessionHandle
сеанс, IReadOperation 1 operation, CancellationToken
cancellationToken) at
MongoDB.Driver.MongoCollectionImpl
1.FindSync [TProjection] (IClientSessionHandle
сеанс, FilterDefinition 1 filter, FindOptions
2 варианта,
Отмена взята Отмена взята) в
MongoDB.Driver.MongoCollectionImpl 1.<>c__DisplayClass41_0
1.b__0 (IClientSessionHandle
сеанс) в
MongoDB.Driver.MongoCollectionImpl 1.UsingImplicitSession[TResult](Func
2
func, CancellationToken CancellationToken) в
MongoDB.Driver.MongoCollectionImpl 1.FindSync[TProjection](FilterDefinition
1
фильтр, FindOptions 2 options, CancellationToken cancellationToken)<br>
at MongoDB.Driver.FindFluent
2.ToCursor (CancellationToken
CancellationToken) в
MongoDB.Driver.IAsyncCursorSourceExtensions.FirstOrDefault [TDocument] (IAsyncCursorSource 1
source, CancellationToken cancellationToken) at
MongoDB.Driver.IFindFluentExtensions.FirstOrDefault[TDocument,TProjection](IFindFluent
2
найти, Отмена взята Отмена отменена) в
Housters.Data.DataAccess.AnalyticsData.Find (платформа платформы,
DateTime date) в
C: \ Housters \ Data \ DataAccess \ Common \ AnalyticsData.cs: строка 22 в
Housters.Business.Services.Common.AnalyticsService.Get (Platform
платформа, DateTime date) в
C: \ Housters \ Business \ Services \ Common \ AnalyticsService.cs: строка 31 в
Housters.Business.Services.Common.AnalyticsService.Log (Platform
платформа, строковый идентификатор устройства, тип AnalyticsEventType, логическое значение
onlyLogIfSignedUp) в
C: \ Housters \ Business \ Services \ Common \ AnalyticsService.cs: строка 19 в
Housters.Web.Controllers.HomeController.Index () в
C: \ Housters \ Web \ Controllers \ HomeController.cs: строка 8 в
Microsoft.Extensions.Internal.ObjectMethodExecutor.Execute (Объект
target, параметры Object []) в
Microsoft.AspNetCore.Mvc.Internal.ActionMethodExecutor.SyncActionResultExecutor.Execute (IActionResultTypeMapper
картограф, исполнитель ObjectMethodExecutor, контроллер объекта, объект []
аргументы) в
Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.d__12.MoveNext ()
Я не совсем понимаю, что происходит, потому что MongoDB поддерживает .NET Core, а System.Runtime.Remoting.Messaging.CallContext - это метод .NET Framework, а .NET Core его не поддерживает. Я видел другой SO-поток , где OP столкнулся с этой проблемой, однако его проблема заключалась в том, что он не использовал последнюю версию драйвера MongoDB C #. Я использую последний драйвер, 2.8.0, в библиотеке классов .NET Standard (2.0.3).