如何使用 asp.net mvc 应用程序从服务器上的网络路径读取

我已经在运行 .net MVC 应用程序的 Web 服务器上设置了到另一台用于存储上传文件的服务器的网络路径。为了允许通过应用程序将文件上传到网络路径,我修改了 IIS 中的应用程序池,以便应用程序有权上传到它。这一切正常。

为了让应用程序在加载页面时读取文件,我在 IIS 中创建了一个虚拟目录,该目录现在作为 IIS 中该站点的文件系统的一部分出现。然后如何在我的应用程序中访问和生成此位置的路径,以便可以将该路径传递给数据库,然后在页面上加载图像?

假设我的路径是:

虚拟路径是 useruploads/image.jpg

如何让我的应用程序识别我创建的虚拟路径?

或者取消 IIS 中的虚拟目录,有没有办法让我的应用程序直接访问 Web 服务器上的网络路径?

编辑 - 要添加到上面,我在 iis 中映射了网络路径,它在 iis 中的我的站点下显示如下:

在此处输入图片说明

然后我想使用像 ~/useruploads/file.jpg 这样的地址从 asp.net mvc 应用程序中的这个目录读取。如果我能让我的应用程序识别这个虚拟目录,那么我将能够从中读取。

编辑 2

好的,我想我已经确定了我的问题的性质并且更加清晰。基本上,当我在网页上链接到该文件时,我可以正常访问该文件。但是,我在 chrome 中收到消息“不允许加载本地资源”。我相信这只是 Web 浏览器不允许我加载图像的问题,因为它在具有本地地址(网络路径)的页面上被引用。因此,我现在尝试在应用程序中创建一个动作,以使用 Url.Action 加载图像,指向我的动作,然后将 id 转换为图像流,例如

在我看来:

<img src="@Url.Action("image", "files", new { image = Model.image})" alt="name" />

其中 Mode.image 类似于 folder\image.jpg。

行动:

public FileResult image(string id)
        {
            var dir = @"\\SERVERNAME\upload\";
            var path = Path.Combine(dir, id);

            return base.File(path, "image/jpg");
        }

所以最后我的问题是我无法将图像放置在页面上,因为它使用了服务器上的本地地址,出于浏览器的安全原因,这是不允许的。为了使用我不得不使用的网络路径

<img src="@Url.Action("image", "files", new { image = Model.image})" alt="name" />

我认为这一行动:

public FileResult image(string id)
    {
        var dir = @"\\SERVERNAME\upload\";
        var path = Path.Combine(dir, id);
        string contentType = MimeMapping.GetMimeMapping(path);

        return base.File(path, contentType);
    }

然后将图像返回到页面,尽管这意味着图像不会被缓存。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

ASP.NET MVC 2.0应用程序无法在服务器上运行

来自分类Dev

如何从服务器端(asp.net web api / mvc)向 xamarin 表单应用程序发送请求?

来自分类Dev

ASP.NET MVC应用程序是否可以从Web服务器上其他位置的文件夹中读取文件?

来自分类Dev

防火墙后面的服务器上的Asp.Net MVC应用程序的部署策略

来自分类Dev

ASP.Net MVC应用程序-授权在登台服务器上的执行方式不同

来自分类Dev

防火墙后面的服务器上的Asp.Net MVC应用程序的部署策略

来自分类Dev

一台服务器上的多个 Web 应用程序(Silverlight 和 ASP.NET MVC)

来自分类Dev

ASP.NET MVC 应用程序中的 IIS 服务器 MIME 错误

来自分类Dev

如何使用Ajax在ASP.NET MVC上显示服务器端验证错误

来自分类Dev

如何从部署在另一台服务器上的MVC4.net应用程序调用部署在远程服务器上的Servicestack服务?

来自分类Dev

如何将用于访问SQL服务器的HTML + Javascript页面转换为ASP.NET MVC应用程序?

来自分类Dev

ASP.NET MVC:如何绕过MVC应用程序中的控制器?

来自分类Dev

如何将asp.net应用程序部署到Linux服务器上的Docker容器?

来自分类Dev

ASP.net Web窗体应用程序“在服务器上”使用实体框架获取旧数据值

来自分类Dev

从同一服务器上的Windows服务发送在ASP.NET MVC应用程序中运行的SignalR广播

来自分类Dev

如何部署ASP.NET MVC 4应用程序?

来自分类Dev

如何获取ASP.NET MVC应用程序以从Azure Service Bus队列读取?

来自分类Dev

如何获取ASP.NET MVC应用程序以从Azure Service Bus队列读取?

来自分类Dev

学习ASP.Net MVC并在“ /”应用程序中构建用户管理器服务器错误

来自分类Dev

如何使用Visual Studio将ASP.NET Web应用程序(.Net Framework)发布到FTP服务器?

来自分类Dev

如何在远程服务器上调试.net Core 2.1 MVC Web应用程序?

来自分类Dev

使用Web服务作为数据访问层开发ASP.NET MVC应用程序

来自分类Dev

如何在asp.net应用程序的服务器端增加图像控制?

来自分类Dev

使用SignalR作为独立的服务器应用程序,而不是Asp.Net

来自分类Dev

在服务器端使用asp.net的Android应用程序

来自分类Dev

要在服务器中添加哪些功能来部署ASP.Net MVC Web应用程序?

来自分类Dev

如何在ASP.NET MVC 4中的服务器上缓存数据?

来自分类Dev

如何在服务器上安装ASP.NET MVC 5?

来自分类Dev

服务器发送的事件如何与ASP.NET MVC一起使用?

Related 相关文章

  1. 1

    ASP.NET MVC 2.0应用程序无法在服务器上运行

  2. 2

    如何从服务器端(asp.net web api / mvc)向 xamarin 表单应用程序发送请求?

  3. 3

    ASP.NET MVC应用程序是否可以从Web服务器上其他位置的文件夹中读取文件?

  4. 4

    防火墙后面的服务器上的Asp.Net MVC应用程序的部署策略

  5. 5

    ASP.Net MVC应用程序-授权在登台服务器上的执行方式不同

  6. 6

    防火墙后面的服务器上的Asp.Net MVC应用程序的部署策略

  7. 7

    一台服务器上的多个 Web 应用程序(Silverlight 和 ASP.NET MVC)

  8. 8

    ASP.NET MVC 应用程序中的 IIS 服务器 MIME 错误

  9. 9

    如何使用Ajax在ASP.NET MVC上显示服务器端验证错误

  10. 10

    如何从部署在另一台服务器上的MVC4.net应用程序调用部署在远程服务器上的Servicestack服务?

  11. 11

    如何将用于访问SQL服务器的HTML + Javascript页面转换为ASP.NET MVC应用程序?

  12. 12

    ASP.NET MVC:如何绕过MVC应用程序中的控制器?

  13. 13

    如何将asp.net应用程序部署到Linux服务器上的Docker容器?

  14. 14

    ASP.net Web窗体应用程序“在服务器上”使用实体框架获取旧数据值

  15. 15

    从同一服务器上的Windows服务发送在ASP.NET MVC应用程序中运行的SignalR广播

  16. 16

    如何部署ASP.NET MVC 4应用程序?

  17. 17

    如何获取ASP.NET MVC应用程序以从Azure Service Bus队列读取?

  18. 18

    如何获取ASP.NET MVC应用程序以从Azure Service Bus队列读取?

  19. 19

    学习ASP.Net MVC并在“ /”应用程序中构建用户管理器服务器错误

  20. 20

    如何使用Visual Studio将ASP.NET Web应用程序(.Net Framework)发布到FTP服务器?

  21. 21

    如何在远程服务器上调试.net Core 2.1 MVC Web应用程序?

  22. 22

    使用Web服务作为数据访问层开发ASP.NET MVC应用程序

  23. 23

    如何在asp.net应用程序的服务器端增加图像控制?

  24. 24

    使用SignalR作为独立的服务器应用程序,而不是Asp.Net

  25. 25

    在服务器端使用asp.net的Android应用程序

  26. 26

    要在服务器中添加哪些功能来部署ASP.Net MVC Web应用程序?

  27. 27

    如何在ASP.NET MVC 4中的服务器上缓存数据?

  28. 28

    如何在服务器上安装ASP.NET MVC 5?

  29. 29

    服务器发送的事件如何与ASP.NET MVC一起使用?

热门标签

归档