簡體   English   中英

WCF服務作為單獨的庫-帶Ninject的DI

[英]WCF Service as a separate library - DI with Ninject

這是我的項目圖(快捷方式)。 我正在使用Ninject解決我的解決方案中的DI。

  • MyWCFService
    • App_Start
      • NinjectWebCommon.cs
    • web.config
  • 朋友實現
    • Friends.svc
      • Friends.svc.cs
  • 朋友合同
    • IFriends.cs
  • DAL實施
    • Blebleble.cs
  • DAL合同
    • IBlebleble.cs

我在Friends.Implementation庫中的WCF服務有問題。

當我在MyWCFService中具有MyWCFServiceMyWCFService文件時,一切正常(DI和Ninject MyWCFService )。

但是,當我將“朋友”服務移到單獨的庫中時,出現此錯誤:

提供的服務類型沒有默認的(無參數)構造函數,因此無法作為服務加載。 要解決此問題,請向類型添加默認構造函數,或將類型的實例傳遞給主機。

為什么會出現該錯誤? 怎么解決呢?

這是我的服務代碼:

<%@ ServiceHost Language="C#" Debug="true" Service="XYZ.Services.Friends" CodeBehind="Friends.svc.cs" Factory="Ninject.Extensions.Wcf.NinjectServiceHostFactory" %>

.CS文件

    public IAccountService accountService { get; set; }
    public IFriendsService friendsService { get; set; }

    public Friends(IAccountService _acc, IFriendsService _friends)
    {
        this.accountService = _acc;
        this.friendsService = _friends;
    }

問候。

對於單獨庫中的服務,應從ServiceHost刪除CodeBehind="Friends.svc.cs"屬性,並且Service屬性應與服務實現的標准程序集名稱匹配

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM