2011-10-28 7 views
1

に含まれていない私は、私が引っ張ってきたときのParameterNameとアンSqlParameterがこのSqlParameterCollection

アンSqlParameterがこの SqlParameterCollection

に含まれていません取得しておく理由を把握することはできません他のメソッドでもこのようなprocsを呼び出すことができます。

procはそのケーシングに1つのパラメータ@EqIdを持っています。

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

Database db = DatabaseFactory.CreateDatabase("OurDBName"); 
DbCommand cmd = db.GetStoredProcCommand("Get_EquipTypes_By_ID"); 

db.DiscoverParameters(cmd); 
cmd.Parameters["@EqId"].Value = equipID; 

using (IDataReader objReader = db.ExecuteReader(cmd)) 
{ 
    while (objReader.Read()) 
     equipTypes.Add(DataUtility.GetStringFromReader(objReader, "Data")); 
} 
+2

なぜDiscoverParametersを使用しますか?それは余分な往復ですが、あなたはすでに名前を知っています。これはプローブをプローブするツールのためです。 –

答えて

0

のも一種あなたがいるとき、まず第一に、私はパラメータを発見していないだろう、私はそれはそれを行うにはクリーンな方法だと考え、この

cmd.Parameters.AddWithValue("@EqId", equipID); 

のようなあなたの追加パラメータを実行します。パラメータを認識します。これを行っているので、パラメータコレクションを調べ、パラメータが検出されていることを確認します。あなたはそれを理解しているだけでなく、グレッグが提案したようなものをもっと目指しています。

関連する問題