ASP.NET MVC(Linux)中的方法中的任何参数都会导致System.TypeLoadException错误

时间:2015-02-21 04:16:42

标签: c# asp.net-mvc linux monodevelop

IDE:MonoDevelop:5.7 ASP.NET MVC:5.2 操作系统:Linux(Mint 17)

当我在HelloWorldController中包含任何参数作为任何方法的一部分并导航到该方法各自的URL时,我得到“System.TypeLoadException”错误。从方法中删除参数可解决错误。我花了相当多的时间试图通过搜索和IRC频道找到解决方案,不幸的是,我发现最常见的解决方案是切换到Visual Studio。如果这不是一个结构合理的“编程问题”,我很抱歉,但是我的智慧结束了,并希望得到帮助:)谢谢。

有没有办法解决此错误?

// HelloWorldController.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace test.Controllers
{
    public class HelloWorldController : Controller
    {
        //
        // GET: /HelloWorld/
        public string Index()
        {
            return "This is my <b>default</b> action...";
        }

        //
        // GET:/HelloWorld/Welcome/
        public string Welcome(string name)
        {
            name = "Joe";
            int age = 22;
            return HttpUtility.HtmlEncode("Hello " + name + " age: " + age);
        }   
    }
}

堆栈跟踪错误消息:

System.TypeLoadException 无法从程序集'System.Web,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'加载类型'System.Web.UnvalidatedRequestValuesBase'。

描述:HTTP 500.Error处理请求。

详细信息:非Web异常。异常来源(应用程序或对象的名称):System.Web.Mvc。 异常堆栈跟踪: 在System.Web.Mvc.FormValueProviderFactory.GetValueProvider(System.Web.Mvc.ControllerContext controllerContext)[0x00000] in:0 in System.Web.Mvc.ValueProviderFactoryCollection.GetValueProvider(System.Web.Mvc.ControllerContext controllerContext)[0x00000] in :System.Web.Mvc.ControllerBase.get_ValueProvider()[0x00000]中的0:System.Web.Mvc.ControllerActionInvoker.GetParameterValue中的0:System.Web.Mvc.ControllerContext controllerContext,System.Web.Mvc.ParameterDescriptor parameterDescriptor [ 0x00000] in:0:System.Web.Mvc.ControllerActionInvoker.GetParameterValues(System.Web.Mvc.ControllerContext controllerContext,System.Web.Mvc.ActionDescriptor actionDescriptor)[0x00000] in:0 at System.Web.Mvc.Async.AsyncControllerActionInvoker +&lt;&gt; c__DisplayClass21.b__19(System.AsyncCallback asyncCallback,System.Object asyncState)[0x00000] in:0

0 个答案:

没有答案