Passing array of ints to T-SQL stored proc via entity framework

前端 未结 3 357
悲&欢浪女
悲&欢浪女 2020-12-18 07:45

I\'ve read many posts and think I understand the concepts, but my small array of ints fails to pass from a C#/EF module to a SQL Server stored proc. Hoping other eyes can s

3条回答
  •  予麋鹿
    予麋鹿 (楼主)
    2020-12-18 08:31

    That worked! For the sake of others I'll post the precise code here, which I had to tweak slightly.

    var dataTable = new DataTable();
    dataTable.TableName = "dbo.IntsTTV";
    dataTable.Columns.Add("Id", typeof(int));
    dataTable.Rows.Add(1); // Id of '1' is valid for the Person table
    
    SqlParameter parameter = new SqlParameter("UserIds", SqlDbType.Structured);
    parameter.TypeName = "dbo.IntsTTV";
    parameter.Value = dataTable;
    var res = _db.Database.SqlQuery("EXEC dbo.GetUsers @UserIds", parameter).ToList();
    

提交回复
热议问题