LINQ到SQL存储过程问题

本文关键字:问题 存储过程 SQL LINQ | 更新日期: 2023-09-27 18:10:03

我正在尝试学习更多关于c#和ASP.Net的web开发。

我正在使用LINQ将联系人表单中的值存储在数据库中,但是,数据库还需要通过调用存储过程生成的'Policy ID'。

我完全不知道如何调用存储过程,获取生成的整数值,然后使用该值在表中设置PolicyID。

谁能给我提供一个这样工作的过程:

执行SPROC,返回POLICY ID。获取PolicyID,设置为PolicyNo。添加PolicyNo到数据库。PolicyID

我明白这些信息可能看起来很业余,但我以前从未使用过LINQ或存储过程。到目前为止,我一直是一个前端开发人员。

提前感谢!

编辑:

下面是目前使用的c#代码:
using (MagTestDataContext context = new MagTestDataContext())
    {
        //create new instance of tblPolicy object
        tblPolicy policy = new tblPolicy();
        var policyNo = context.spNextPolicyID();
        //add values to field
        policy.PolicyID = policyNo;
        policy.PolicyHolder = tbName.Text;
        policy.EMail = tbEmail.Text;
        policy.Telephone = tbTelephone.Text;
        policy.Address1 = tbAddressLine1.Text;
        policy.Address2 = tbAddressLine2.Text;
        policy.Address3 = tbAddressLine3.Text;
        policy.Address4 = tbAddressLine4.Text;
        policy.PostCode = tbPostcode.Text;
        policy.ExtraInfo10 = tbInsurer.Text;
        policy.ExtraInfo11 = ddReason.Text;
        policy.ExtraInfo12 = tbOther.Text;
    }

LINQ到SQL存储过程问题

看起来你正在使用实体框架。如果是这样,则可以使用以下命令执行存储过程:

using (MagTestDataContext context = new MagTestDataContext())
{
    var policyid = db.ExecuteQuery<int>("DECLARE @ret INT; EXEC spNextPolicyID @ret OUTPUT; SELECT @ret").Single();
}