如何首先在EF代码中使用FileTable

Rez*_*ari 1 asp.net-mvc entity-framework ef-code-first filetable

FileTable先在项目中使用SQL Server 2014和EF代码。

当我使用此命令时

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

它在sql中显示此警告

当FILESTREAM数据库选项NON_TRANSACTED_ACCESS设置为FULL且READ_COMMITTED_SNAPSHOT或ALLOW_SNAPSHOT_ISOLATION选项处于启用状态时,T-SQL和FILETABLE上下文中对FILESTREAM数据的事务性读取访问将被阻止。

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

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

消息33447,级别16,状态1,第2行
无法访问FileTable'File'中的file_stream列,因为FileTable不支持行版本控制。可以将事务级别设置为“ READ COMMITTED SNAPSHOT”或“ SNAPSHOT”以外的值,或者使用READCOMMITTEDLOCK表提示。

我先使用EF代码-如何解决此问题?

小智 5

您必须运行此命令才能选择表。使用[master]更改数据库[dbname],将NO_WAIT设置为READ_COMMITTED_SNAPSHOT OFF