c# – 如何将图像添加到.resx文件中?
当然,除了使用Visual Studio的AddResource按钮之外.
我提交了一个表单和一个图像文件.在我的控制器操作中,我通过使用Path.GetFileName()获取HttpPostedFileBase对象及其文件名.如果我只是使用SaveAs()函数将图像文件保存在我的应用程序中,我以后无法访问它进行测试,因为它给了我“不允许加载本地资源”错误. 所以我想将图像添加到.resx文件中,稍后使用ResourceManager或其他东西检索它.我的问题是,如何将控制器操作中的图像添加到我的.resx文件中? 我还应该问一下,这是否是在我的应用程序中添加和检索图像文件的好方法. 编辑: 这是控制器代码: public ActionResult UrunEkle(Urun urun,HttpPostedFileBase image) { Directory.CreateDirectory(Server.MapPath("~/App_Data/Images")); var path = Path.Combine(Server.MapPath("~/App_Data/Images"),fileName); image.SaveAs(path); urun.ArtUrl = path; // other stuff.... } 在我看来,我尝试检索这样的图像: <img alt="@urun.name" src="@Url.Content(urun.ArtUrl)" /> 但是使用谷歌浏览器,我得到“不允许加载本地资源”.我怎么能避免这个? 解决方法
忘记尝试将图像添加到RESX文件中;它不是设计用于在运行时修改.
请发一些代码.最有可能的是,您之前提供使用该图像的URL不正确.可能是因为您在服务器上返回文件的路径,而不是在网站上下文中返回图像的URL. 来自Chrome的错误消息告诉您它正在尝试从客户端上的本地文件系统加载资源. Url.Content将相对虚拟路径转换为绝对虚拟路径,并且需要以?开头的URL.您当前正在传递图像文件的绝对物理路径,而Url.Content正在返回它,不变.您需要urun.ArtUrl中的相对虚拟路径(?/ App_Data / Images / Untitled.png).这是您传递给Server.MapPath的值. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |