Web サービスをホストする Web サイトを作成しました。実行するとランタイム エラーが発生します
サービス「Try」によって実装されたコントラクトのリストに、コントラクト名「ITry」が見つかりませんでした。
私のWCFサービスインターフェースとクラスはそのように見えます
namespace test1
{
[ServiceContract]
public interface ITry
{
[OperationContract]
[WebInvoke(Method = "GET",
ResponseFormat = WebMessageFormat.Json,
UriTemplate = "data/{username}/{password}")]
string Login(string username, string password);
}
}
サービスの実装:
namespace test1
{
public class Try : ITry
{
public string Login(string username, string password)
{
using (var instance = new FacultySystemEntities1())
{
var user = instance.Users.Where(u => u.UserName == username && u.UserPassword == password).FirstOrDefault();
if (user != null)
return "true";
else
return "false";
}
}
}
}
およびWebサイト、web.configは次のようになります
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0"/>
</system.web>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceMetadata httpGetEnabled="true"/>
<serviceDebug includeExceptionDetailInFaults="false"/>
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true"/>
<services>
<service name="test1.Try">
<endpoint address="http://localhost:8732/Try" binding="webHttpBinding" contract="ITry"/>
</service>
</services>
</system.serviceModel>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
</configuration>