2012-11-03 2 views
0

JSON 형식으로 출력되지 않습니다. 여기서 코드JSON 형식으로 응답 및 요청을받는 방법은 무엇입니까?

IService1.cs ---- ----이다

[ServiceContract] 
public interface IService1 
{ 
    [OperationContract] 
    [WebInvoke(Method = "GET", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare, UriTemplate = "currency")] 
    List<Employee> GetAllEmployeesMethod(); 

    [OperationContract] 
    string TestMethod(); 

    [OperationContract] 
    [WebInvoke(Method = "GET", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, UriTemplate = "players")] 
    List<Person> GetPlayers(); 

} 

---- ---- Service1.svc.cs

public List<Employee> GetAllEmployeesMethod() 
{ 
    List<Employee> mylist = new List<Employee>(); 

    using (SqlConnection conn = new SqlConnection("--connection string--")) 
    { 
     conn.Open(); 

     string cmdStr = String.Format("Select customercode,CurrencyCode,CurrencyDesc from Currency"); 
     SqlCommand cmd = new SqlCommand(cmdStr, conn); 
     SqlDataReader rd = cmd.ExecuteReader(); 

     if (rd.HasRows) 
     { 
      while (rd.Read()) 
       mylist.Add(new Employee(rd.GetInt32(0), rd.GetString(1), rd.GetString(2))); 
     } 
     conn.Close(); 
    } 


    return mylist; 
} 

---- web.config ----

<?xml version="1.0"?> 
    <configuration> 
<appSettings/> 
<connectionStrings/> 
<system.web> 
<compilation debug="true" targetFramework="4.0"/> 
<authentication mode="Windows"/>  

<pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"/> 
</system.web> 
<system.webServer> 
<directoryBrowse enabled="true"/> 
</system.webServer> 
<system.serviceModel> 
<services> 
    <service name="JSONSerialization.Service1" behaviorConfiguration="EmpServiceBehaviour"> 
    <!-- Service Endpoints --> 
    <endpoint address="" binding="webHttpBinding" contract="JSONSerialization.IService1" behaviorConfiguration="web" > 
    </endpoint> 
    <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/> 
    </service> 
</services> 
<behaviors> 
    <serviceBehaviors> 
    <behavior name="EmpServiceBehaviour">   
     <serviceMetadata httpGetEnabled="true"/>   
     <serviceDebug includeExceptionDetailInFaults="false"/> 
    </behavior> 
    </serviceBehaviors> 
    <endpointBehaviors> 
    <behavior name="web"> 
     <webHttp automaticFormatSelectionEnabled="true" defaultOutgoingResponseFormat="Json" helpEnabled="true" defaultBodyStyle="Bare"/>   
    </behavior> 
    </endpointBehaviors> 
    </behaviors> 
    </system.serviceModel> 
    </configuration> 
(210)

나는이 서비스를 실행할 때, 나는 out put

에서 데이터를 얻을하지만 JSON 형식으로 결과를 원하는
예 :{"currencycode":"INR","DESCRIPTION":"Indian Rupees","customercode" : "1001"},....

답변

0

추가 [직렬화] 당신의 방법

을하는 속성
관련 문제