Web サービスを公開しようとしています。既に .asmx ファイルの Build Action プロパティを "Compile" に、Web.config を "None" に変更していますが、ソリューションを再構築しようとすると次のエラーが発生します。
Error 1 Keyword, identifier, or string expected after verbatim specifier: @ \MyVirtualCartWS\MyVirtualCartWS.asmx
Error 2 A namespace cannot directly contain members such as fields or methods \MyVirtualCartWS\MyVirtualCartWS.asmx
どちらのエラーも .asmx ファイルを指しているので、次のようになります。
<%@ WebService Language="C#" CodeBehind="MyVirtualCartWS.asmx.cs" Class="MyVirtualCartWS.MyVirtualCartWS" %>
コードビハインド
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Collections;
namespace MyVirtualCartWS
{
/// <summary>
/// Summary description MyVirtualCartWS
/// </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 MyVirtualCartWS : System.Web.Services.WebService
{
#region Using LoggedUser
[WebMethod]
public LoggedUser AddUser(string _login, string _email, string _password)
{
LoggedUser lUser = new LoggedUser();
lUser.AddUser(_login, _email, _password);
return lUser;
}
[WebMethod]
public LoggedUser LogIn(string _login, string _password)
{
LoggedUser lUser = new LoggedUser();
lUser.LogIn(_login, _password);
return lUser;
}
#endregion
}
}