2012-08-27 40 views
6

Tôi đang làm một dịch vụ dữ liệu WCF đơn giản trên đầu trang của ngữ cảnh dữ liệu LINQ to SQL. Tệp svc.cs của tôi rất đơn giản. Tuy nhiên, khi tôi chạy nó từ VS2012, tôi nhận được một "Yêu cầu Lỗi" chung mà không có thêm thông tin. Làm thế nào tôi có thể khắc phục sự cố/giải quyết nó?Dịch vụ dữ liệu WCF - Lỗi yêu cầu

using System; 
using System.Collections.Generic; 
using System.Data.Services; 
using System.Data.Services.Common; 
using System.Linq; 
using System.ServiceModel.Web; 
using System.Web; 
using MyApp.Business.Pmw.DataAccess; 

namespace MyApp.DataService 
{ 
    public class SystemData : DataService<PmwModelDataContext> 
    { 
     // This method is called only once to initialize service-wide policies. 
     public static void InitializeService(DataServiceConfiguration config) 
     { 
      config.SetEntitySetAccessRule("SysParam", EntitySetRights.ReadMultiple);    
      // TODO: set rules to indicate which entity sets and service operations are visible, updatable, etc. 
      // Examples: 
      // config.SetEntitySetAccessRule("MyEntityset", EntitySetRights.AllRead); 
      // config.SetServiceOperationAccessRule("MyServiceOperation", ServiceOperationRights.All); 
      config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V3; 
     } 
    } 
} 

Trả lời

19

Nếu bạn đặt [ServiceBehavior(IncludeExceptionDetailInFaults=true)] thuộc tính trên các dịch vụ và thiết lập config.UseVerboseErrors để true, bạn sẽ nhận được một thông báo lỗi rõ ràng hơn nhiều về phía khách hàng. Vui lòng đảm bảo xóa các cài đặt này trước khi bạn đi vào sản xuất vì chúng có thể dẫn đến việc tiết lộ thông tin không chủ định:

[ServiceBehavior(IncludeExceptionDetailInFaults = true)] 
public class FileService : DataService<FileContext> 
{ 
    public static void InitializeService(DataServiceConfiguration config) 
    { 
     config.UseVerboseErrors = true; 
     config.SetEntitySetAccessRule("*", EntitySetRights.AllRead); 
     config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V3; 
    } 
} 
Các vấn đề liên quan