如何使用vici coolstorage执行存储过程?

时间:2010-03-18 21:58:57

标签: stored-procedures coolstorage

我正在围绕Vici Coolstorage构建一个应用程序(asp.net版本)。我创建了我的类并映射到我的数据库表,并且可以很好地提取所有记录的列表。

我编写了一个存储过程,其中查询跳过未使用Coolstorage映射的数据库,但是,查询结果中的字段直接映射到我的某个类。该过程需要1个参数。

这里有2个问题:

我该如何执行存储过程?我正在做这个

CSParameterCollection collection = new CSParameterCollection();
collection.Add("@id", id);
var result = Vici.CoolStorage.CSDatabase.RunQuery("procedurename", collection);

并获得异常“'procedurename'附近的语法不正确。” (我猜这是因为它试图将其作为文本而不是程序执行?)

并且,由于表示我的表的类被定义为抽象,我如何指定结果应该创建一个MyTable对象列表而不是泛型或动态或任何对象?如果我尝试

Vici.CoolStorage.CSDatabase.RunQuery<MyTable>(...)

编译器因为它是一个抽象类而对我大吼大叫。

1 个答案:

答案 0 :(得分:2)

CoolStorage中有一个快捷方式来运行存储过程。只需在存储过程名称前加上“!”:

 CSDatabase.RunQuery("!procedurename", collection);