如何在EF Code First中使用FileTable

时间:2016-02-28 18:33:41

标签: asp.net-mvc entity-framework ef-code-first filetable

我在SQL Server 2014中使用FileTable,在我的项目中首先使用EF代码。

当我使用此命令时

USE [master]
GO
ALTER DATABASE [OnlineStore] 
SET FILESTREAM( DIRECTORY_NAME = N'OnlineStore',
    NON_TRANSACTED_ACCESS = FULL) WITH NO_WAIT
GO

它在sql中显示此警告

  

当FILESTREAM数据库选项NON_TRANSACTED_ACCESS设置为FULL且READ_COMMITTED_SNAPSHOT或ALLOW_SNAPSHOT_ISOLATION选项打开时,将阻止对FILETABLE上下文中的FILESTREAM数据的T-SQL和事务读取访问。

现在我继续创建表,并插入文件夹和文件没问题。

我读取数据的问题,当读取数据显示此错误时:

  

Msg 33447,Level 16,State 1,Line 2
  无法访问FileTable'File'中的file_stream列,因为FileTable不支持行版本控制。将事务级别设置为READ COMMITTED SNAPSHOT或SNAPSHOT以外的其他级别,或使用READCOMMITTEDLOCK表提示。

我首先使用EF代码 - 如何解决这个问题?

1 个答案:

答案 0 :(得分:4)

您必须运行此命令才能选择表。 使用[主人] 走 ALTER DATABASE [dbname] SET NO_WAIT设置READ_COMMITTED_SNAPSHOT