0

我正在使用 Enterprise Library 的 DAAB。我有这样的代码:

        Database dBase = DatabaseFactory.CreateDatabase();

        DbCommand dCommand = dBase.GetStoredProcCommand(StoredProcedureName, Parameters);
        dCommand.CommandTimeout = CommandTimeout;

        return dBase.ExecuteDataSet(dCommand);

如何清除参数缓存?似乎当您有两个名称相似的 SP 时,例如“GetUser”和“GetUser_Data”,它会保存第一个参数,这会在您调用之后的第二个。

4

1 回答 1

2

我无法从您的代码中看出,但听起来您正在重用 DbCommand 对象,并且它第二次附加了更多参数。尝试为每个查询创建一个新的 DbCommand 实例。

或者,你可以只做一个 DbCommand.DbParameterCollection.Clear() 吗?

于 2010-02-11T01:21:55.147 回答