- ふらっと C#,C♯,C#(初心者用) Part117 [転載禁止]©2ch.net
259 :デフォルトの名無しさん[sage]:2015/10/19(月) 06:15:38.35 ID:NjHqWI/s - public void Hoge<T>(T t)
ジェネリックメソッドの 引数にインターフェースを入れさせないようにできませんか? もしくはインターフェースならreturnするような処理を書きたいです メソッド内で更にTを使ってインスタンスを生成するので インターフェースだと問題なのです
| - ふらっと C#,C♯,C#(初心者用) Part117 [転載禁止]©2ch.net
261 :デフォルトの名無しさん[sage]:2015/10/19(月) 07:05:12.11 ID:NjHqWI/s - >>260
制約条件というのがあったんですね ありがとうございます
| - ふらっと C#,C♯,C#(初心者用) Part117 [転載禁止]©2ch.net
263 :デフォルトの名無しさん[sage]:2015/10/19(月) 10:54:18.39 ID:NjHqWI/s - >>262
デザインパターンですよね?そちらの方がいいのかな? public static IEnumerable<T> Select<T>(string dbFile, string tableName, string ptn) where T:new() { using (var connection = GetConnection(dbFile)) { connection.Open(); try { var sql = "select * from " + tableName + " where name like '%" + ptn + "%'"; return connection.Query<T>(sql); } catch (Exception e) { Console.WriteLine("SelectError={0}",e.Message); } return null; } } こんな感じのdllを作っている途中なんですが
| - ふらっと C#,C♯,C#(初心者用) Part117 [転載禁止]©2ch.net
267 :デフォルトの名無しさん[sage]:2015/10/19(月) 16:42:20.38 ID:NjHqWI/s - >>265
Interfaceだと return connection.Query<T>(sql); ここでエラーになるんです 動的に生成されたあらゆるdbのテーブルにアクセスできるような 関数が書きたいんですが難しくて試行錯誤してます
|
|