Tôi có một ứng dụng đang hoạt động bằng cách sử dụng Json.NET (newtonsoft) làm bộ nối tiếp tùy chỉnh. Hiện nay tôi đang thêm dẫn xuất này của WebHttpBehavior trong một WebServiceHostFactory tùy chỉnh. Xem đoạn mã ở cuối this blog để biết cách tôi đính kèm đoạn mã đó.Hành vi tùy chỉnh sẽ không đăng ký trong web.config của tôi
Khi tôi đang lưu trữ dịch vụ này trong IIS, tôi muốn loại bỏ mã lưu trữ tùy chỉnh của mình và chỉ cần thêm hành vi tùy chỉnh vào web.config của tôi. Quy trình được hiển thị trong số này msdn article.
Vì vậy, tôi cố gắng làm điều đó như sau:
<behaviors>
<endpointBehaviors>
<behavior name="jsonRest">
<webHttp defaultOutgoingResponseFormat="Json" />
<NewtonsoftJsonBehavior/>
</behavior>
</endpointBehaviors>
<serviceBehaviors>
<behavior name="">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
</behaviors>
<extensions>
<behaviorExtensions>
<add name="NewtonsoftJsonBehavior" type="Newtonsoft.Json.Extensions.NewtonsoftJsonBehavior, NewtonsoftJsonExtensions, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null" />
</behaviorExtensions>
</extensions>
Đáng buồn thay, tôi không thể làm cho công việc đó. Khi tôi làm điều đó, Visual Studio nói với tôi rằng
Yếu tố 'hành vi' có phần tử con không hợp lệ 'NewtonsoftJsonBehavior'
Trong afforementioned msdn article, nó nói rằng
Để thêm khả năng cấu hình cho phần tử, bạn cần phải viết và đăng ký một phần tử cấu hình. Để biết thêm thông tin về điều này, hãy xem tài liệu System.Configuration.
Sau khi phần tử và loại cấu hình của nó được xác định, phần mở rộng có thể được sử dụng, như trong ví dụ sau.
Tôi có cảm giác rằng những gì tôi thiếu là chính xác điều đó. Bằng cách nào đó đăng ký phần tử và loại cấu hình của nó. Đáng buồn là tôi không thể làm cho người đứng đầu hoặc đuôi của System.Configuration đó là nghĩa vụ phải cho tôi biết làm thế nào để làm điều này. Vì vậy, đó là câu hỏi cơ bản của tôi:
Làm cách nào để viết và đăng ký phần tử cấu hình và nếu đó không phải là vấn đề của tôi thì vấn đề là gì?
Rất cám ơn trước!
Tôi sẽ thử svcconfigeditor điều đầu tiên vào ngày mai và báo cáo lại. Về phần khác, khi tôi thử chạy ứng dụng của mình, gọi dịch vụ hiển thị web.config của tôi trong trình duyệt và làm nổi bật thẻ tùy chỉnh là lý do khiến dịch vụ không thể chạy. Không thể nhớ chính xác thư, nhưng cũng có thể đăng bài vào ngày mai, nếu điều đó có ích. – Mithon
Thêm một câu trả lời của riêng tôi, nhưng upvoted của bạn kể từ khi chỉ cho tôi để SvcConfigEditor đã giúp tôi theo dõi những gì tôi cần phải làm. – Mithon