小编Joh*_*ape的帖子

保存文件时出现 UnauthorizedAccessException,但可以创建目录

我正在尝试将文件保存到磁盘,但收到 UnauthorizedAccessException。\n该错误表明我必须获得该文件夹的正确权限,并且我已尝试了我能找到的所有可能的用户,但没有成功工作。

\n\n

尝试过以下用户

\n\n
    \n
  • 网络
  • \n
  • 网络服务
  • \n
  • IUSR
  • \n
  • IUSR_[计算机名]
  • \n
\n\n

并在不工作的情况下给予充分的权利。

\n\n

我发现真正奇怪的是,我在尝试保存文件之前创建了一个目录,并且效果很好,当尝试将文件保存到该新目录时,我得到了 UnautorhizedAccessException。

\n\n

代码如下:

\n\n
    [HttpPost]\n    public ActionResult Images(HttpPostedFileBase file, string boatId)\n    {\n        if (file.ContentLength > 0)\n        {\n            var fileName = Path.GetFileName(file.FileName);\n            var path = Path.Combine(Server.MapPath("~/Content/Images/" + boatId));\n            Directory.CreateDirectory(path);\n            file.SaveAs(path);\n\n        }\n        return View($"Filen p\xc3\xa5 {boatId} har laddats upp");\n    }\n
Run Code Online (Sandbox Code Playgroud)\n\n

对我所缺少的有什么想法吗?

\n

c# model-view-controller asp.net-mvc-5

2
推荐指数
1
解决办法
1775
查看次数

Sqlite EF Core 5 不允许我进行不区分大小写的搜索

因此,我尝试使用 ef-core 进行 linq 查询来执行 where 搜索,但无论我尝试什么,都无法让它执行不区分大小写的搜索。

例如,如果我搜索“星期二”,它不会获取任何数据,因为数据库中的所有内容都保存为“星期二”。

搜索后,我发现您必须通过 ef core 迁移告诉 sqlite 您希望它对每个属性不区分大小写,并使用以下代码。

b.Property<string>("DayOfWeek")
    .HasColumnType("TEXT COLLATE NOCASE");
Run Code Online (Sandbox Code Playgroud)

该信息位于 ContextModelSnapshot.cs 文件中。

所以我这样做了,删除了数据库并执行了“更新数据库”,创建了一个新数据库,但没有任何改变。

现在我当然可以.ToLower()在每个搜索中使用 the ,但是如果我忘记将其添加到每个 where 子句,那只会影响性能并增加失败的可能性。

我使用以下包来创建、迁移和访问数据库。

<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="5.0.1">
  <PrivateAssets>all</PrivateAssets>
  <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="5.0.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="5.0.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="5.0.1">
Run Code Online (Sandbox Code Playgroud)

我错过了什么或者我是否误解了 sqlite 不区分大小写查询的整个概念?

sqlite entity-framework-core asp.net-core

1
推荐指数
1
解决办法
2336
查看次数