如何从存储过程中获取结果作为值?

时间:2017-10-20 14:08:01

标签: c# sql-server stored-procedures

上周我有一个类似的问题,我得到了很好的帮助,所以我再次尝试。

基本上我有这个存储过程,我输入一个字符串并从数据库中的表中获取一个int。我想将此int用于另一个存储过程。

问题是我不知道如何从存储过程结果中获取实际值。如果我想,我可以在数据网格或其他东西中显示输出,但我不希望这样。我只是想让我的程序中的值用于其他东西。我该怎么做?

这是SP:

@EquipmentTypeDesignation NVARCHAR(50)

AS

SELECT EquipmentType.EquipmentTypeID
FROM EquipmentType
WHERE EquipmentTypeDesignation = @EquipmentTypeDesignation

我想做这样的事情:

DataClasses1DataContext context = new DataClasses1DataContext();

...

var s = context.ReadEquipmentTypeDesignationSP("S9");
s.EquipmentTypeID somethingsomething something

我觉得我错过了一些基本的东西,谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

@EquipmentTypeDesignation NVARCHAR(50)

AS

DECLARE @equipTypeId int

SELECT top 1 @equipTypeId = EquipmentType.EquipmentTypeID
FROM EquipmentType
WHERE EquipmentTypeDesignation = @EquipmentTypeDesignation

RETURN @equipTypeId

代码

var equipTypeId = context.ReadEquipmentTypeDesignationSP("S9").FirstOrDefault();