Возможно, это дубликат, но я не совсем понимаю, что происходит в данном конкретном случае.Насколько я знаю, это исключение выдается всякий раз, когда вы пытаетесь установить или прочитать свойство из динамического объекта, который неизвестен.Но свойство существует.Сначала он спамит это исключение при загрузке приложения, затем при запуске следующего кода:
Десериализованный мной динамический объект:
{
"Capacity" : 5,
"AreaType" : "Restaurant",
"Position" : "1, 2",
"Dimension" : "2, 1"
}
Код, который я пытаюсь запустить:
int _capacity = int.Parse(_dynamicRoom.Capacity); //This is where the exception is thrown.
Room _restaurantRoom = new Restaurant(_positionAndDimension, _capacity);
(_restaurantRoom as Restaurant).Capacity = _dynamicRoom.Capacity;
Я щелкнул в меню настроек исключений, но я думаю, что отменил все изменения.Что я сделал не так?
Часть вывода:
'SEZ-5 Hotel Simulation.exe' (CLR v4.0.30319: SEZ-5 Hotel Simulation.exe): загружен 'C:\ WINDOWS \ Microsoft.Net \ сборка \ GAC_MSIL \ Microsoft.CSharp.resources \ v4.0_4.0.0.0_nl_b03f5f7f11d50a3a \ Microsoft.CSharp.resources.dll.Модуль был построен без символов.Исключение: «Microsoft.CSharp.RuntimeBinder.RuntimeBinderException» в Microsoft.CSharp.dll Исключение: «Microsoft.CSharp.RuntimeBinder.RuntimeBinderException» в Microsoft.CSharp.dll Исключение: «Microsoft.CSharp.RuntimeBinder.RuntimeBinderException» в MicrosoftИсключение .CSharp.dll: «Microsoft.CSharp.RuntimeBinder.RuntimeBinderException» в исключении Microsoft.CSharp.dll: «Microsoft.CSharp.RuntimeBinder.RuntimeBinderException» в исключении Microsoft.CSharp.dll: «Microsoft.CSharp.RuntimeBinder.RuntimeBinderException 'в Microsoft.CSharp.dll
// код запускается
// Ресторан обнаруживается и загружается в
Возникло исключение:' Microsoft.CSharp.RuntimeBinder.RuntimeBinderExceptionв Microsoft.CSharp.dll возникла исключительная ситуация: «Microsoft.CSharp.RuntimeBinder.RuntimeBinderException» в Microsoft.CSharp.dll возникла исключительная ситуация: «Microsoft.CSharp.RuntimeBinder.RuntimeBinderException» в System.Core.dll