• ABP:在多语句事务内不允许使用 CREATE DATABASE 语句


    一、问题

    使用ef codefirst开发,无法创建数据库的问题,如下提示

    复制代码
    Server Error in '/' Application.
    
    在多语句事务内不允许使用 CREATE DATABASE 语句。
    
    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 
    
    Exception Details: System.Data.SqlClient.SqlException: 在多语句事务内不允许使用 CREATE DATABASE 语句。
    
    Source Error: 
    
    
    Line 32:          */
    Line 33:         public ZmBlogDbContext(string nameOrConnectionString)
    Line 34:             : base(nameOrConnectionString)
    Line 35:         {
    Line 36: 
    复制代码

    二、解决方法
    这是 EF 抛出的异常,只要先创建好数据库就可以了

    create database [ZmBlog]

    提示:

    这个错误是在第一次运行abp出现的,创建数据库后,这时要使用 update-database 进行数据迁移,否则基础数据是空的

    解决方案二:

    1、创建ABP空模板后,按F5,生成报:在多语句事务内不允许使用 CREATE DATABASE 语句错误

        解决办法:打开Nugut程序包管理器控制台,默认项目选择:EntityFramework;输入:Update-Database -Verbose

     2、如果出现:Cannot determine a valid start-up project. Using project 'MyPro.EntityFramework' instead. Your configuration file and working directory may not be set as expected. Use the -StartUpProjectName parameter to set one explicitly. Use the -Verbose switch for more information.

    解决办法:Update-Database -StartUpProjectName "MyPro.Web"
    通过StartUpProjectName指定启动项目

  • 相关阅读:
    C#执行异步操作的几种方式
    spring boot swagger ui使用 nginx 部署后无法使用问题
    PHP支付宝接口RSA验证
    认证加密算法php hash_hmac和java hmacSha1的问题
    如何实现从 Redis 中订阅消息转发到 WebSocket 客户端
    ffmpeg安装
    nginx静态资源反向代理
    Redis基础知识 之——发布/订阅
    linux下安装git
    php实现无限级分类查询(递归、非递归)
  • 原文地址:https://www.cnblogs.com/kingreatwill/p/7058090.html
Copyright © 2020-2023  润新知