单声道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)使用虚拟主机文件进行了配置。
我的服务器上安装了以下包:
- mono-complete
- mono-devel
- 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
我的理论包括:
- 没有安装MONO所需的所有内容
- 需要添加另一个依赖项
- 我启动这个应用程序的方式不对
- 不知何故,我需要使单声道监听一个特定的IP和/或端口?(见下文)
- 我漏了一个台阶 我没有使用Xamarin发布我的项目。
此外,当我启动XSP或XSP4时,我的终端告诉我以下内容:
Listening on address: 0.0.0.0 <br/>
Root Directory: /var/www/ms <br/>
Listening on port: 8080 (non-secure)
还有,不要说我没有添加足够的信息。请对我有耐心,并问我什么信息我可以为你得到,以解决这个问题。我不是很了解。net环境,而且我还是个新手。
这很合理。
- 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当时也不是开源的。
如果可能的话,你可以这样做:
-
使用Xamarin存储库安装Mono 4(4.0.1是最新版本),www.mono-project.com/download/#download-lin
-
如果Mono 4.0.1仍然失败,你可能会尝试。net Core和ASP。净5。微软开源。net Core和ASP。. NET 5和完整的Linux/OS X覆盖,所以这将是你所依赖的动力。