Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 例外情况;对象同步方法是从未同步的代码块调用的。”;在MVC中_C#_Asp.net Mvc - Fatal编程技术网

C# 例外情况;对象同步方法是从未同步的代码块调用的。”;在MVC中

C# 例外情况;对象同步方法是从未同步的代码块调用的。”;在MVC中,c#,asp.net-mvc,C#,Asp.net Mvc,我正在从数据库中加载一些值,以显示给我的网站用户。由于这些值不会改变太多,所以我将它们加载到一个静态/共享对象中 为了确保多个用户不会同时修改同一对象,我使用监视器。输入(和监视器。退出)来锁定/阻止这些值的加载 不幸的是,当从.NET中的MVC视图调用时,这不起作用,因为它会引发以下异常: 从未同步的代码块调用了对象同步方法 有没有一种方法可以在不完全改变代码设计的情况下通过MVC实现这一点?您看到这个错误是因为您很可能在异步方法中使用了监视器。但是你不应该,可以在这里阅读更多关于这个问题的内

我正在从数据库中加载一些值,以显示给我的网站用户。由于这些值不会改变太多,所以我将它们加载到一个静态/共享对象中

为了确保多个用户不会同时修改同一对象,我使用
监视器。输入
(和
监视器。退出
)来锁定/阻止这些值的加载

不幸的是,当从.NET中的MVC视图调用时,这不起作用,因为它会引发以下异常:

从未同步的代码块调用了对象同步方法


有没有一种方法可以在不完全改变代码设计的情况下通过MVC实现这一点?

您看到这个错误是因为您很可能在异步方法中使用了监视器。但是你不应该,可以在这里阅读更多关于这个问题的内容


您只需将监视器替换为或

就可以看到此错误,因为您很可能在异步方法内部使用监视器。但是你不应该,可以在这里阅读更多关于这个问题的内容

您可以简单地用或替换监视器