我有一个用.Net核心构建的小网站,其中包括一个SQLite数据库和实体框架核心.我在Mac上使用VS Code.
在本地管理数据库很容易 - dotnet ef database update效果很好.问题是在部署到Azure时运行迁移.
我的回购在GitHub上,当我推送到主分支时,我将Azure配置为从GitHub中提取代码.部署工作正常,但迁移不在Azure上运行.
我已经看到了一些我可以yourDbContext.Database.Migrate()在Startup.cs中使用的建议,但它似乎.Migrate()已不再可用.
我尝试从Azure下载部署脚本并通过添加call :ExecuteCmd dotnet ef database update -e Production到deploy.cmd 来自定义它,但这似乎不起作用.
我尝试过使用PS shell我可以通过Kudu站点手动运行迁移,但是当试图运行dotnet ef database update结果时,No executable found matching command "dotnet-ef"
这里有一个非常相似的问题(EF Core(1.0.0)迁移在Azure应用服务上),但这个问题没有得到任何答案.
我正在使用BULK INSERT将文本文件加载到从SQL Anywhere数据库创建的SQL Server中.我们收到的文本文件包含包含制表符的字段.它们在文本文件中转义为"\ x09".
我可以让SQL Server识别这个转义序列吗?
有些行具有足够的这些转义序列,当我执行BULK INSERT时它们会导致截断错误.我宁愿让SQL Server将它们重新设置为制表符.
更新(7/26):这是示例文件数据
ID Name Desc
1 Value 1 Some text:\x09with tabs
2 Value 2 More Text:\x09with more\x09tabs
Run Code Online (Sandbox Code Playgroud)
因此,在此示例中,表示ID为2的记录的Desc字段的值需要31个字符.但是,它应该以25个字符的形式插入到数据库中.
在我的连接字符串中,我添加了Application Name = XX,因此我可以从SQL服务器中识别进程的来源(sp_who2 - ProgramName列).从.NET连接时,这很有用.当我使用Server.CreateObject("ADODB.Connection")通过Classic ASP连接时,我的ProgramName被SQL Server识别为"Internet信息服务".
有没有人知道配置某些东西的方法(连接字符串?IIS?sql?)所以SQL Server看到了我的应用程序名称?