Dynamics CRM - 使用 C# Plugin 调用 SQL 存储过程

有时候,在 Dynamics CRM Plugin 中通过 linq 查询数据会比较慢,可以通过采用在 C# plugin 中直接调用数据库存储过程的方式来提高效率,具体过程如下:

1.新建一个存储过程:

ALTER PROCEDURE [dbo].[p_Sample]
AS
BEGIN
    SELECT COUNT(dbo.Table.Id) FROM dbo.Table
    WHERE
    dbo.Table.Name LIKE '张%'
END

2.在 Plugin 中调用存储过程:

string sProc = "p_Sample";
string sqlConnection = "Data Source=.;Initial Catalog=DataBaseSample;User ID=sa;PassWord=123456";
using (SqlConnection conn = new SqlConnection(sqlConnection))
{
    SqlCommand cmd = new SqlCommand(sProc, conn);
cmd.CommandType = CommandType.StoredProcedure; SqlDataAdapter adapter
= new SqlDataAdapter(cmd); DataSet dt = new DataSet(); adapter.Fill(dt); if(dt.Tables[0].Rows[0][0] != null) { return (int)dt.Tables[0].Rows[0][0]; } else { return 0; } }

猜你喜欢

转载自www.cnblogs.com/Sunny20181123/p/10663226.html