我有一个使用Webservices和ASP.Net的应用程序,应该维护。因此,我在该主题上提高了自己的技能。我在VS 2013中在Window中运行Web服务没有问题,但单声道有问题。

这是我运行代码时遇到的错误

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) [0x00006] in <filename unknown>:0
  at System.Web.Services.Configuration.WsdlHelpGeneratorElement.get_HelpGeneratorPath () [0x0000c] in <filename unknown>:0
  at System.Web.Services.Protocols.DocumentationServerProtocol.Initialize () [0x001f1] 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) [0x00022] 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) [0x00014] in <filename unknown>:0

这是代码

WebService1.asmx
<%@ WebService Language="C#" CodeBehind="WebService1.asmx.cs" Class="DemoService.WebService1" %>

WebService1.asmx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Xml;

namespace DemoService
{
    /// <summary>
    /// Summary description for WebService1
    /// </summary>
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
    // [System.Web.Script.Services.ScriptService]
    public class WebService1 : System.Web.Services.WebService
    {

        [WebMethod]
        public string HelloWorld()
        {
            return "Hello World";
        }

        [WebMethod]
        public XmlElement AddMe(int a, int b)
        {
            XmlDocument doc = new XmlDocument();
            for(int i=0; i<5; i++)
            {
                XmlNode n = doc.CreateNode( XmlNodeType.Element,  i.ToString(), "me.com.aisee");
                for(int j=0; j<5; j++)
                {
                    //n.AppendChild(doc.CreateElement(j.ToString()));
                }
            }

            return doc.DocumentElement;

        }
    }
}

我不是我在这里想念的。据我所知,它应该可以正常工作。这是我的单声道版本
~$ mono --version
Mono JIT compiler version 4.3.0 (tarball Fri Jun 12 11:43:58 UTC 2015)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
    TLS:           __thread
    SIGSEGV:       altstack
    Notifications: epoll
    Architecture:  amd64
    Disabled:      none
    Misc:          softdebug
    LLVM:          supported, not enabled.
    GC:            sgen

最佳答案

那是单声道的错误。您可以在这里查看:
https://bugzilla.xamarin.com/show_bug.cgi?id=37137

https://bugzilla.xamarin.com/show_bug.cgi?id=39772

关于c# - Web服务在Mono 4中不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30861762/

10-11 22:25
查看更多