簡體   English   中英

使用Unity注入DAAB數據庫對象

[英]Inject DAAB Database Object with Unity

我正在嘗試創建一個DAO對象,該對象將構造函數依賴項添加到數據訪問應用程序塊的Database對象。 如何設置.config文件以使Unity解析依賴關系? 我嘗試映射數據庫類型以創建數據庫對象,但無法使其正常工作。

有沒有其他人嘗試做這樣的事情?

只是一個開始提示,向問題中添加示例代碼。 它告訴我們您已經走了多遠,至少使用了什么語言。 我假設使用C#,EL V5,並從頭開始:

首先,讓我們回顧一下依賴於數據庫應用程序塊的類的標准構造函數:

private Microsoft.Practices.EnterpriseLibrary.Data.Database database;

public TestSQLConnection(Microsoft.Practices.EnterpriseLibrary.Data.Database injectedDatabase)
{
    database = injectedDatabase;
}

以及如何調用創建者:

TestSQLConnection testSQLConnection =
    Microsoft.Practices.EnterpriseLibrary.Common.Configuration.EnterpriseLibraryContainer.Current.GetInstance<TestSQLConnection>(); 

簡而言之,就是為您提供了依賴注入,忘記了如何創建它,只要求它的一個實例,其余的工作由庫完成。

創建配置的最簡單方法是使用企業庫V5配置工具,因為它會創建必要的部分,因此建議您閱讀“精讀手冊”。

如果您手動進行操作,則需要以下部分:

<?xml version="1.0" encoding="utf-8" ?>
    <configuration>
        <!-- Tell EL what sections to use-->
        <configSections>
           <section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="true" />
        </configSections>
        <!-- And use them -->
        <dataConfiguration defaultDatabase="MyDatabase" />
        <!-- This is just a plain connection string-->
        <connectionStrings>
            <add name="MyDatabase" connectionString="Data Source=DUMMY;Initial Catalog=default;Integrated Security=True" providerName="System.Data.SqlClient" />
        </connectionStrings>
    </configuration>

暫無
暫無

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

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