如何使用ADO.NET将表值参数传递给存储过程?

推荐答案

  1. Create type in SQL Server:

    CREATE TYPE [dbo].[MyDataType] As Table
    (
        ID INT,
        Name NVARCHAR(50)
    )
    
  2. Create Procedure:

    CREATE PROCEDURE [dbo].[MyProcedure]
    (
        @myData As [dbo].[MyDataType] Readonly
    )
    AS
    
    BEGIN
        SELECT * FROM @myData
    END
    
  3. Create DataTable in C#:

    DataTable myDataTable = new DataTable("MyDataType");
    myDataTable.Columns.Add("Name", typeof(string));
    myDataTable.Columns.Add("Id", typeof(Int32));
    myDataTable.Rows.Add("XYZ", 1);
    myDataTable.Rows.Add("ABC", 2);
    
  4. Create SQL Parameter:

Asp.net相关问答推荐

IIS重写模块排除机器人但允许GoogleBot

如何在 asp.net 服务器中使用字体

如何在 IIS 上配置 Web Deploy 发布功能,以便开发人员可以发布?

带有模型的 mvc 上传文件 - 第二个参数发布的文件为空

从 Request.Url.AbsolutePath 获取应用相对 url

为什么微软决定支持 jQuery 如此重要?

C# ASP.NET Core Serilog 添加类名和方法到日志(log)

使用域用户的 SQL 连接字符串?

无法确定条件表达式的类型,因为 'string' 和 'System.DBNull' 之间没有隐式转换

当用户使表单无效时单击取消按钮时,如何清除 MVC 客户端验证错误?

获取页面上特定类型的所有 Web 控件

使用 Moq 验证活动注册

在asp.net控件之间动态添加

如何在 ASP.NET Core Web API 中配置 JSON 格式的缩进

不能在 DropDownList 中 Select 多个项目

SignalR /signalr/hubs 404 未找到

错误请求 - 无效的主机名 ASP.net Visual Studio 2015

如何判断字符串的第一个字符是否是字母,C#中的任何字母

使用 FormsAuthentication.SetAuthCookie 存储更多信息

如何创建代表 colored颜色 的随机十六进制字符串?