System.ArgumentNullException в моно веб-службе ASP.NET

Я новичок, и я не знаю, где искать или что делать. Пожалуйста, проведите меня через это.

Я использую моно v4.2.1 и apache2 в Ubuntu 14.04

Мне удалось установить мой веб-сервис ASP.NET по URL: http://myurl/WebService/Service.asmx

Но когда я открываю его, я получаю эту ошибку:

System.ArgumentNullException
Value cannot be null.
Parameter name: path1

Description: HTTP 500.Error processing request.
Details: Non-web exception. Exception origin (name of application or object): mscorlib.
Exception stack trace:
  at System.IO.Path.Combine (System.String path1, System.String path2) <0x40960a80 + 0x00211> in <filename unknown>:0 
  at System.Web.Services.Configuration.WsdlHelpGeneratorElement.get_HelpGeneratorPath () <0x40adbfb0 + 0x0003b> in <filename unknown>:0 
  at System.Web.Services.Protocols.DocumentationServerProtocol.Initialize () <0x40a73d70 + 0x00728> in <filename unknown>:0 
  at System.Web.Services.Protocols.ServerProtocol.SetContext (System.Type type, System.Web.HttpContext context, System.Web.HttpRequest request, System.Web.HttpResponse response) <0x40a72740 + 0x00103> in <filename unknown>:0 
  at System.Web.Services.Protocols.ServerProtocolFactory.Create (System.Type type, System.Web.HttpContext context, System.Web.HttpRequest request, System.Web.HttpResponse response, System.Boolean& abortProcessing) <0x40a72300 + 0x000c2> in <filename unknown>:0 

Это мой Service.asmx:

<%@ WebService Language="C#" CodeBehind="Service.asmx.cs" Class="ACE.Service" %>

И файл Service.asmx.cs:

using System.Web.Services;

namespace ACE
{
    [WebService(Namespace = "http://myurl/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    public class Service : System.Web.Services.WebService
    {
        [WebMethod]
        public string HelloWorld()
        {
            return "Hello World";
        }
    }
}

Во-первых, в Microsoft Visual Studio все работает нормально, но у моно есть эта проблема.

Второй момент: http://myurl/WebService/Service.asmx?wsdl открывает OK в формате xml, но когда я добавляю его в качестве ссылки на службу в Microsoft Visual Studio, он выдает исключение в этой строке:

ServiceSoapClient a = new ServiceSoapClient();

Исключение:

An unhandled exception of type 'System.InvalidOperationException' occurred in System.ServiceModel.dll
Additional information: An endpoint configuration section for contract 'ServiceReference1.ServiceSoap' could not be loaded because more than one endpoint configuration for that contract was found. Please indicate the preferred endpoint configuration section by name.

Но когда я развертываю свой веб-сервис в режиме отладки Microsoft Visual Studio, он не выдает это исключение, а выдает его в моно.

1 ответ

Решение

Я понял, что это из-за версии моно.

Я удалил все компоненты официального моно-репозитория и установил моно-полные пакеты ubuntu, и это было исправлено.

Другие вопросы по тегам