单声道XSP4和XSP错误不同?出了什么问题?

本文关键字:问题 什么 错误 XSP 声道 XSP4 单声道 | 更新日期: 2023-09-27 17:52:47

我目前正在运行Ubuntu 14.04与Digital Ocean,并有兴趣设置Mono与一些。net代码一起工作。我目前是。net的新手,然而,我认为有一个服务器设置在线,我可以查看我的代码将是整洁的。并不是说在我自己的计算机上看到我的更改是不好的,而是我想找到一个地方来部署我的项目。我已经支付了托管和不感兴趣的花费更多的钱IIS,所以我认为这可能是一个快速的解决方案。有人告诉我,XSP对于在浏览器中暂时测试web应用程序很有用。XSP似乎不能正常工作在我的Linux系统。我需要一些帮助。

安装以下包后,我一直在本地发布这些项目,然后通过SFTP将它们添加到我的服务器的自己的目录中。这个目录已经设置了一个a记录,并且已经在以下位置(/etc/apache2/sites-available)使用虚拟主机文件进行了配置。


我的服务器上安装了以下包:
  1. mono-complete
  2. mono-devel
  3. referenceassemblies-pcl

我试图添加一个MVC4项目到我的服务器,但是,这会导致服务器上的一些错误。我认为,如果我安装OWIN,这将解决这个MVC4 web应用程序的特定问题,但我仍然收到错误。MVC3也产生了类似的错误。进入目录文件夹,使用命令"xsp"answers"xsp4"返回不同的错误。

目前,使用。net framework 4.0运行一个没有添加任何内容的干净web表单会导致以下错误:

**XSP:** System.TypeLoadException
Could not load type 'System.Web.UI.ScriptResourceDefinition' from assembly 'System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.<br/>
**Stack Trace**: at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
**XSP 4:** System.ArgumentException
An item with the same key has already been added.<br/>
**Stack Trace:** at System.ThrowHelper.ThrowArgumentException (ExceptionResource resource) [0x00000] in <filename unknown>:0 
  at System.Collections.Generic.Dictionary`2[System.String,System.Web.Routing.RouteBase].Insert (System.String key, System.Web.Routing.RouteBase value, Boolean add) [0x00000] in <filename unknown>:0 
  at System.Collections.Generic.Dictionary`2[System.String,System.Web.Routing.RouteBase].Add (System.String key, System.Web.Routing.RouteBase value) [0x00000] in <filename unknown>:0 
  at System.Web.Routing.RouteCollection.Add (System.String name, System.Web.Routing.RouteBase item) [0x00000] in <filename unknown>:0 
  at Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls (System.Web.Routing.RouteCollection routes, Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings settings, Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver[] resolvers) [0x00000] in <filename unknown>:0 
  at Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls (System.Web.Routing.RouteCollection routes, Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings settings) [0x00000] in <filename unknown>:0 
  at WebApplication2.RouteConfig.RegisterRoutes (System.Web.Routing.RouteCollection routes) [0x00000] in <filename unknown>:0 
  at WebApplication2.Global.Application_Start (System.Object sender, System.EventArgs e) [0x00000] in <filename unknown>:0 
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 

我的理论包括:

  1. 没有安装MONO所需的所有内容
  2. 需要添加另一个依赖项
  3. 我启动这个应用程序的方式不对
  4. 不知何故,我需要使单声道监听一个特定的IP和/或端口?(见下文)
  5. 我漏了一个台阶
  6. 我没有使用Xamarin发布我的项目。

此外,当我启动XSP或XSP4时,我的终端告诉我以下内容:

Listening on address: 0.0.0.0 <br/>
Root Directory: /var/www/ms <br/>
Listening on port: 8080 (non-secure)

还有,不要说我没有添加足够的信息。请对我有耐心,并问我什么信息我可以为你得到,以解决这个问题。我不是很了解。net环境,而且我还是个新手。

单声道XSP4和XSP错误不同?出了什么问题?

这很合理。

  • ASP。.NET MVC需要。NET 4.0及以上版本(有时以后会变成。NET 4.5),所以在XSP中运行任何这样的应用程序。基于。NET 2的)必须以你得到的异常结束,因为XSP和。NET 2兼容的CLR在Mono中将无法承载它们。
  • XSP4和。net 4兼容的CLR在Mono 3(我假设你使用默认的Ubuntu存储库来安装Mono)是旧的和错误的完全托管这样的应用程序。微软当时从未针对Mono测试过他们的框架,而且。net Framework当时也不是开源的。

如果可能的话,你可以这样做:

  1. 使用Xamarin存储库安装Mono 4(4.0.1是最新版本),www.mono-project.com/download/#download-lin

  2. 如果Mono 4.0.1仍然失败,你可能会尝试。net Core和ASP。净5。微软开源。net Core和ASP。. NET 5和完整的Linux/OS X覆盖,所以这将是你所依赖的动力。