为什么这会引发Microsoft.CSharp.RuntimeBinder.RuntimeBinderException?

时间:2018-10-05 20:45:54

标签: exception

这可能是重复的,但是我不太了解在这种情况下发生了什么。据我所知,每当您尝试从未知的动态对象设置或读取属性时,都会引发此异常。但是,该属性存在。它首先在加载应用程序时向此垃圾邮件发送垃圾邮件,然后在运行以下代码时:

我反序列化的动态对象:

{
    "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 \ assembly \ GAC_MSIL \ Microsoft.CSharp.resources \ v4。 0_4.0.0.0_nl_b03f5f7f11d50a3a \ Microsoft.CSharp.resources.dll”。模块的构建没有符号。 引发异常: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中的“ Microsoft.CSharp.RuntimeBinder.RuntimeBinderException”

0 个答案:

没有答案