单元测试报告SQL错误 - 找不到数据类型

时间:2014-10-25 22:30:53

标签: c# sql-server entity-framework

我使用此代码:

using (var unitOfWork = this.unitOfWorkFactory.Create())
{
    var tagParam = new SqlParameter
                       {
                           ParameterName = "@tagList",
                           SqlDbType = System.Data.SqlDbType.Structured,
                           Value = tags.ToTVP(),
                           TypeName = "[dbo].[TagList]"
                       };

    unitOfWork.Context.Database.ExecuteSqlCommand("exec sp_InsertTagList @tagList", tagParam);
    // unitOfWork.Context.Database.ExecuteSqlCommand("INSERT INTO dbo.Tags SELECT Name FROM @tagList", tagParam);
}

ToTvp只是一种扩展方法,可以从项目列表中为我生成DataTable

我收到此错误:

  

测试方法InspiredBlog.UnitTests.UnitTest1.TestMethod1扔了   exception:System.Data.SqlClient.SqlException:Column,parameter或   变量@tagList。 :找不到数据类型dbo.TagList。

我在我的数据库中创建了表类型。

CREATE TYPE TagList AS TABLE 
(
    Name VARCHAR(MAX)
)
GO

我不知道为什么会出现这个错误!

我可以轻松创建SQL查询并在SSMS中执行

0 个答案:

没有答案