2013-03-13 26 views
5

Chúng tôi đang tạo một ứng dụng sử dụng ASP.NET MVC4 cho ứng dụng web và WCF cho các dịch vụ web truy cập kho dữ liệu chung.sử dụng MvcMailer trong WCF

Ứng dụng web gửi email bằng MvcMailer, tôi hy vọng một người nào đó có thể chỉ cho tôi một số tài nguyên cho thấy cách MvcMailer có thể được sử dụng từ WCF (nếu các tài nguyên đã tồn tại).

Tôi đã trải qua: https://github.com/smsohan/MvcMailer/issues/44

Tôi không muốn lăn mã của riêng tôi, nhưng tôi sẵn sàng để đi xuống con đường mà nếu không có giải pháp tốt hơn.

Cảm ơn!

Trả lời

2

Tôi là người đã đăng sự cố đó trên GitHub. Hiện tại không có tài nguyên nào để làm điều đó, vì vậy tôi phải tự mình tìm ra. Đây là hướng dẫn nhỏ tôi đã viết cho đồng nghiệp của tôi. Tôi nên đăng nó trực tuyến ở đâu đó.

Cách cho phép MvcMailer hoạt động trong WCFService của bạn.

1) Bật HttpContext

A) Thêm dòng sau vào Web.Config của bạn

<system.serviceModel> 
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" aspNetCompatibilityEnabled="true" /> 
</system.serviceModel> 

B) Thêm thuộc tính sau đến lớp dịch vụ của bạn.

[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)] 
//public class MyService 
//{ 
// ... 
//} 

2) Enable Razor

A) Thêm dòng sau vào Web.Config của bạn

<system.web> 
    <compilation debug="true" targetFramework="4.0"> 
     <assemblies> 
      <add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/> 
      <add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/> 
      <add assembly="System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/> 
      <add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" /> 
     </assemblies> 
     <buildProviders> 
      <add extension=".cshtml" type="System.Web.WebPages.Razor.RazorBuildProvider, System.Web.WebPages.Razor"/> 
     </buildProviders> 
    </compilation> 
</system.web> 

B) Thêm tài liệu tham khảo sau đây để các dự án dịch vụ WCF.

System.Web.WebPages 
System.Web.WebPages.Razor 

C) Chọn tham chiếu, nhấp chuột phải và mở Thuộc tính cho chúng. Sau đó, hãy đặt thuộc tính sau:

Copy Local = true 

Xong! MvcMailer giờ đây sẽ hoạt động trong dịch vụ WCF của bạn!

+0

Điều này phù hợp với tôi. Ngài là một huyền thoại! – soupy1976

+0

Vui vì tôi có thể giúp đỡ. – smdrager

Các vấn đề liên quan