在我们的ASP.Net web项目中,我们似乎有一些.refresh文件与我们使用的一些第三方Dll相关联。任何想法他们是什么以及如何/何时创建?什么是ASP.Net中的dll.refresh文件?
回答
这些文件提供有问题的DLL的路径,告诉Visual Studio在哪里可以找到它(如果在文本编辑器中打开它们,可以检查它)。每次添加新项目引用时都会创建它们。
它们通常在您使用不创建标准Visual Studio项目文件的项目类型时出现,因为通常会引用到其中的引用DLL的路径。
从here:
在ASP.NET项目中,增加了基于文件的引用将在Bin文件夹添加.REFRESH文件。当项目受源代码控制时,该文件将被添加到源代码管理中。
*.dll.refresh
丢弃bin目录的文件。每次添加外部引用时,都会在其旁边找到一个dll.refresh文件。这些dll.refresh
文件是规则的一个例外,它们应该进入源代码管理。它是您的Web项目知道其参考位置的唯一方式。
一些关于尝试和错误后刷新文件的信息。这些实验是用Visual Studio 2012完成的。引用被添加到C#asp.net web项目中。
如上所述,通过浏览添加对组件的引用会添加一个.refresh文件。但是,如果在添加的目录中显式添加的DLL上存在额外的依赖DLL,则依赖项也会隐式添加,但不包含.refresh文件!因此,例如,我添加了一个对“MyAssembly.dll”的引用,我也会得到“MyAssembly.dll.refresh”。但是,如果有“MyAssembly.dll”依赖的程序集“MyDependentAssembly.dll”,我将无法获得“MyDependentAssembly.dll.refresh”。所以会发生的是,一个程序集被刷新,但不是它的依赖者!您必须以相反的顺序逐个添加一个DLL,然后事情会更好。
其他一些事情要小心。 添加“MyAssembly.dll”还会添加“MyAssembly.pdb”(如果存在)。如果存在,“MyAssembly.xml”也将被添加到引用中。当“MyAssembly.dll.refresh”存在时,这两个文件也会刷新。
但是,Visual Studio何时决定查找刷新文件?现在请记住,在一个web项目中,项目文件并没有专门跟踪引用的DLL。您不会在项目文件中找到只列出项目依赖关系的DLL。那么刷新什么时候发生?
刷新发生时的答案是在构建时必须加载引用的程序集。这意味着,尽管构建预构建的可更新网站可能无法获取所有DLL。我一直有一个不会刷新的DLL,然后我意识到它只用在.ascx文件中。取消选中“允许预编译的网站可更新”复选框在MSBuild Options项目页面中为我解决了这个问题。
如果您添加了在代码中通过反射加载的引用DLL,它们将不会通过引用进行更新。您必须使用生成事件将它们复制到bin目录中。
我认为当你说'网站项目'时,你的意思是'网站'。 – 2017-08-17 17:27:38
- 1. 为什么删除* .dll.refresh文件没有影响?
- 2. 什么是ASP.NET的等效XAP文件
- 3. 什么是gpstate文件在ASP.NET
- 4. 什么是“Temporary ASP.NET Files”文件夹?
- 5. VS 2010 .dll.refresh在TFS中但不是.dll
- 6. 什么是ASP.NET中的HttpHandler
- 7. 什么是ASP.NET中的ClientScript.RegisterStartupScript?
- 8. 什么是ASP.NET Temporary Files,文件夹的典型文件大小?
- 9. ASP.NET版本3.5网站:文件“vwd.webinfo”做什么,到底是什么?什么是臃肿的web.config文件?
- 10. 什么是我的ASP.NET网站中的aspnet_client文件夹?
- 11. Silverlight/ASP.NET中'ClientBin'文件夹的用途是什么?
- 12. asp.net中web.config文件的用法是什么?
- 13. ASP.Net网站项目中vwd.webinfo文件的用途是什么?
- 14. 什么是ASP.Net
- 15. 什么是Asp.net
- 16. 什么是ASP.NET?
- 17. ASP.NET的ClickOnce:什么是无后缀的.application文件?
- 18. 什么是Jquery的脚本文件Ajax.BeginForm在asp.net mvc的
- 19. index.html文件中的内容是什么?
- 20. Android中的ODEX文件是什么?
- 21. 什么是类文件名中的$ 1?
- 22. 什么是sonar-project.properties文件中的“projectkey”
- 23. 什么是ActiveX INF文件中的hook1?
- 24. routes.rb文件中`self`的值是什么?
- 25. 什么是Linux头文件中的__VMKLNX__?
- 26. 什么是Visual Studio中的HTC文件?
- 27. 什么是eclipse中的* .snap文件?
- 28. CKeditor中的文件contents.css是什么?
- 29. 什么是Python中的.py〜文件
- 30. 什么是openLDAP中的.schema文件
部分从http://monsur.xanga.com/437206798/dllrefresh-and-aspnet/复制 – 2012-11-07 23:40:46
嗨SharpUrBrain,它看起来像你刚从上面的链接复制大部分内容。你可以编辑你的文章并给予作者归属吗?Stack Overflow并不欢迎抄袭,并且在信用到期时给予信用总是不错的。谢谢! – 2012-11-18 20:45:55
新文件引用的dll是否必须是.net格式?新鲜的文件在C++ DLL中新鲜吗? – Gqqnbig 2016-05-20 21:56:15