我已經創建了一個泛型類型簡單的注射器:註冊開放式泛型類型與構造函數的參數
public interface IContext<T> {}
而且,我有一個類型實現的是(與參數的構造函數)
public class Context<T> : IContext<T> { public Context(string url, string key) { } ... }
我想註冊簡單的注射器。通過下面的代碼,我不知道如何通過值構造
container.Register(typeof(IContext<>), typeof(Context<>))
This一個顯示了一種方法,如果我在構造函數的參數傳遞的類型。但是,對我而言,它只是原始類型。看起來像是通過壓倒一切的施工解決方案行爲,我可能做到這一點。但是,真的不知道我該如何利用它。有人能指導我找到一個合適的方式來註冊嗎?
感謝您的見解史蒂文。我想我可以按照你的建議創建一個DTO。但是,爲什麼我會將其註冊爲單身人士?我不能在運行時傳遞參數嗎? (我的要求也是在運行時通過它們) –
@AthiS:啊,那是你的問題中缺少的一些重要信息。值是_runtime _data_。請閱讀[本文](https://www.cuttingedge.it/blogs/steven/pivot/entry.php?id=99)。它描述瞭如何處理運行時數據。 – Steven
有趣的閱讀史蒂文。通過輸入,我改變了設計,以便運行時數據不會通過構造函數傳遞 –