0
我使用EF Code首先在Azure上創建了數據庫,現在我想使用WCF REST公開數據。WCF RESTful服務和EF問題
但是,我收到了一些奇怪的行爲。當我想返回一個列表(即Item)時,我的瀏覽器不能簡單地檢索它。
當我重新命名的方法,以便返回字符串,返回string.item,那麼它的工作原理:/
我的Web.config:
<configuration>
<connectionStrings>
<add name="CijenolomciContext" connectionString="Server=tcp:*.database.windows.net;Database=myDataBase;User ID=*;Password=*;Trusted_Connection=False;Encrypt=True;" providerName="System.Data.EntityClient"/>
</connectionStrings>
<system.serviceModel>
<services>
<service name="Cijenolomci2.Servis.Service" behaviorConfiguration="ServiceBehavior">
<endpoint address="" binding="webHttpBinding" contract="Cijenolomci2.Servis.IService" behaviorConfiguration="web"/>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="ServiceBehavior">
<serviceMetadata httpGetEnabled="true"/>
<serviceDebug includeExceptionDetailInFaults="false"/>
</behavior>
</serviceBehaviors>
<endpointBehaviors>
<behavior name="web">
<webHttp/>
</behavior>
</endpointBehaviors>
</behaviors>
</system.serviceModel>
<system.web>
<compilation debug="true"/>
</system.web>
</configuration>
項目類:
[DataContract]
public class Item
{
[DataMember]
public int ItemID { get; set; }
[Required(AllowEmptyStrings=false, ErrorMessage="You must enter a name!")]
[MaxLength(50, ErrorMessage = "Name must be 50 characters or less")]
[DataMember]
public string Name { get; set; }
[MaxLength(100, ErrorMessage = "Description must be 50 characters or less")]
[DataMember]
public string Description { get; set; }
[Required(AllowEmptyStrings = false, ErrorMessage = "You must enter a OldPrice!")]
[DataMember]
public Decimal OldPrice { get; set; }
[Required(AllowEmptyStrings = false, ErrorMessage = "You must enter a NewPrice!")]
[DataMember]
public Decimal NewPrice { get; set; }
[Required(AllowEmptyStrings = false, ErrorMessage = "You must enter a SaleStarts date!")]
[DataMember]
public DateTime SaleStarts { get; set; }
[DataMember]
public DateTime? SaleEnds { get; set; }
[DataMember]
public int CategoryID { get; set; }
[DataMember]
public virtual Category Category { get; set; }
}
IService:
[OperationContract]
[WebGet(UriTemplate = "/items/", ResponseFormat = WebMessageFormat.Json)]
List<Item> GetItems();
Service.svc:
public List<Item> GetItems()
{
var result = db.Items.AsNoTracking().ToList();
return result;
}
你有什麼錯誤? – 2012-03-25 14:34:13
在fiddler HTTP 504中 – Bip 2012-03-25 14:36:46