私はWCFサービスにとって非常に新しいです。私はbasicHTPBindingで基本的なWCFサービスを作成しました。詳細なコード片下:IPアドレスでブラウザからWCFサービスのベースアドレスにアクセスする方法は?
using MyWCF.DataModel;
using System;
using System.Collections.Generic;
namespace MyWCF
{
public class Service1 : IService1
{
public List<Employee> GetEmployee()
{
return new List<Employee>
{
new Employee{ FirstName = "Md", LastName = "Arefin", City = "Kolkata", Organisation = "TCS", Experience = 3 },
new Employee{ FirstName = "Tuhin", LastName = "Som", City = "Kolkata", Organisation = "TCS", Experience = 9 },
new Employee{ FirstName = "Avik", LastName = "Chattaraj", City = "Kolkata", Organisation = "TCS", Experience = 2 }
};
}
}
}
using MyWCF.DataModel;
using System.Collections.Generic;
using System.ServiceModel;
namespace MyWCF
{
[ServiceContract]
public interface IService1
{
[OperationContract]
List<Employee> GetEmployee();
}
}
using System.Runtime.Serialization;
namespace MyWCF.DataModel
{
[DataContract]
public class Employee
{
[DataMember]
public string FirstName { get; set; }
[DataMember]
public string LastName { get; set; }
[DataMember]
public string City { get; set; }
[DataMember]
public string Organisation { get; set; }
[DataMember]
public int Experience { get; set; }
}
}
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" />
</appSettings>
<system.web>
<compilation debug="true" />
</system.web>
<system.serviceModel>
<services>
<service name="MyWCF.Service1">
<host>
<baseAddresses>
<add baseAddress = "http://localhost:8733/MyWCF/Service1/" />
</baseAddresses>
</host>
<endpoint address="" binding="basicHttpBinding" contract="MyWCF.IService1">
<identity>
<dns value="localhost"/>
</identity>
</endpoint>
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceMetadata httpGetEnabled="True" httpsGetEnabled="True"/>
<serviceDebug includeExceptionDetailInFaults="False" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
私は、Visual Studioでリリースモードでこのアプリケーションを実行していますし、サービスがホストされていると正しく従業員の詳細を返します。
今は同じドメイン内の別のマシンからサービスにアクセスしたいと思います。 "localhost"(つまりhttp://localhost:8733/MyWCF/Service1/)のベースアドレスを入力するときはいつでもブラウザで開きますが、localhostをベースアドレスからipアドレス(つまりhttp://10.135.195.39:8733/MyWCF/Service1/)に置き換えるときはいつでも、ブラウザからサービスにアクセスすることはできません。
- リスト項目は、I(すなわち "10.135.195.39:8733")のIPアドレスとエンドポイントのID値は "localhost" に変更しようとしました。
- リスト項目 エンドポイントからもID部分を削除しようとしました。
しかし、何も機能しません。誰も私を助けることができますか?
続きを読みます –