我繼承了一些代碼(即發生了很多!),它看起來有點像這樣:(命名空間略)「System.Data.Objects.ObjectContext」不包含一個構造函數參數0
public partial class SpatialDatabase : global::System.Data.Objects.ObjectContext
{
public string MY_PROCEDURE(Decimal arg1, Decimal arg2)
{
using (EntityConnection conn = new EntityConnection(this.Connection.ConnectionString))
{
conn.Open();
object a = new System.Data.Objects.ObjectContext(new EntityConnection());
EntityCommand cmd = conn.CreateCommand();
cmd.CommandText = "SpatialDatabaseContext.MY_PROCEDURE";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("ARG1", arg1);
cmd.Parameters.AddWithValue("ARG2", arg2);
EntityParameter resultParam = cmd.Parameters.Add("RESULT", DbType.String, 100);
resultParam.Direction = ParameterDirection.Output;
int c = cmd.ExecuteNonQuery();
return (string)resultParam.Value;
}
}
}
這給了我在我的班級名下帶有錯誤信息的方格藍線。
我知道這段代碼有效。這在現場其他地方運行得很好。 那麼爲什麼這個副本給我這個錯誤?
[編輯]
在現實中,什麼情況是,當EDMX文件是從數據庫對象建立丟失的構造函數中添加。這就是爲什麼它是一個分班! 我們每天都會學到新的東西!
[/編輯]
您需要先閱讀本文http://stackoverflow.com/questions/140490/base-constructor-in-c-sharp-which-gets-called-first – V4Vendetta 2012-07-26 08:54:56
@ V4Vendetta感謝您的鏈接 - 怎麼做它與我的情況有關? – CompanyDroneFromSector7G 2012-07-26 08:58:43
它涉及到你不在繼承中正確定義構造函數。 =) – 2012-07-26 09:00:03