如何发布和预编译项目,使用GleamTech FileUltimate在
本文关键字:使用 GleamTech FileUltimate 项目 何发布 编译 | 更新日期: 2023-09-27 18:15:42
我在我的项目中使用了GleamTech FileUltimate文件管理组件。我将此程序集添加到我要使用的每个页面FileUltimate:
<%@ Register TagPrefix="GleamTech" Assembly="GleamTech.FileUltimate" Namespace="GleamTech.FileUltimate" %>
或Add this to web。配置文件:
<httpModules>
<add name="FileUploaderModule" type="GleamTech.Web.UploadModule"/>
</httpModules>
<pages>
<controls>
<add tagPrefix="GleamTech" assembly="GleamTech.FileUltimate" namespace="GleamTech.FileUltimate"/>
</controls>
</pages>
当我想建立和运行网站,给我一个消息:
有构建错误。
在这种情况下我选择是,网站工作正常,但是当我想发布网站并在最后一步选择预编译时,编译器给出一些错误:
错误:无法创建类型为"GleamTech.FileSystems"的对象。Location'从它的字符串表示形式'~/upload/fm/'为'Location'属性。
错误:在'System.Collections.ObjectModel.Collection ' 1[[GleamTech.FileUltimate. collection]中不允许文字内容(")。FileManagerRootFolder GleamTech。FileUltimate, Version=4.5.0.0, Culture=neutral, PublicKeyToken=a05198837413a6d8]] .
错误:[[GleamTech.FileUltimate System.Collections.ObjectModel.Collection"1。FileManagerRootFolder GleamTech。FileUltimate, Version=4.5.0.0, Culture=neutral, PublicKeyToken=a05198837413a6d8]]必须有类型为"GleamTech.FileUltimate.FileManagerRootFolder"的项。'GleamTech:FileManagerAccessControl'的类型为'GleamTech. fileultimate .FileManagerAccessControl'.
是否有任何方法可以预编译我的项目并忽略这些错误?我该如何解决我的问题?
问好。
为将来参考,
在FileUltimate v5.3.8中修复了这个问题。这个问题只存在于"Web Site"项目中,而不存在于"Web Application"项目中。
修正:在网站项目中,当您在aspx页面中添加FileManager标记并构建网站时,构建失败并出现以下错误消息(实际上是3个错误消息,但主要是这个,其他是后果):无法创建类型为"GleamTech.FileSystems"的对象。
实际上对于旧版本有一个解决方法:
-
在aspx页面中只包含这个标记:
<GleamTech:FileManager ID="fileManager" runat="server" Width="800" Height="600" Resizable="True" />
-
然后在aspx.cs文件后面的代码中,添加你的根文件夹和访问控制:
protected void Page_Load(object sender, EventArgs e) { var rootFolder = new FileManagerRootFolder { Name = "A Root Folder", Location = "~/App_Data/RootFolder1" }; rootFolder.AccessControls.Add(new FileManagerAccessControl { Path = @"'", AllowedPermissions = FileManagerPermissions.Full }); fileManager.RootFolders.Add(rootFolder); }