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!
Điều này phù hợp với tôi. Ngài là một huyền thoại! – soupy1976
Vui vì tôi có thể giúp đỡ. – smdrager