1

SQL Serverにストアドプロシージャがあり、それをエンティティモデルの関数に変換します。関数の出力を、C#などの特定の型に変換するにはどうすればよいint,stringですか?

例:

Testentities test=new TestEntities();
object d=test.FunctionTest("Params");
4

1 に答える 1

1

文字列へ:

Testentities test = new TestEntities();
object d = test.FunctionTest("Params");
string result = d.ToString();

intへ:

Testentities test = new TestEntities();
object d = test.FunctionTest("Params");
int result = Convert.ToInt32(d);

.NETConvertクラスは、さまざまなタイプに変換できます。

ただし、注意が必要です。もちろん、ターゲットタイプが正しいタイプであることを確認する必要があります。それでも、変換が失敗する可能性があるという事実に備える必要があります。これをtry...catchブロックに入れてください。

更新:結果が実際にであることが明らかになった後、次のList<object>ようなことを行う必要があります。

Testentities test = new TestEntities();
object d = test.FunctionTest("Params");

List<string> results = new List<string>();

foreach(object o in d)
{
    results.Add(o.ToString());
}

値でも同じことができます(ループintで使用するだけですConvert.ToInt32()foreach

于 2012-12-15T09:51:39.830 に答える