В моей текущей саге, чтобы отразить хостинг устаревшего приложения в чистой коробке, я ударил свою следующую загвоздку. Одна страница основывается на большом .NET UserControl, который на новом компьютере отображает только как большой серый цвет greyed textarea (серая вертикальная полоса прокрутки на правом краю. Проверка источника показывает ожидаемый тег object
.)
Это особенно сложно, потому что никто, похоже, мало знает о размещенных UserControls и всех данных обсуждений в 2002-2004 годах.
Страница довольно проста:
<%@ Page language="c#" Codebehind="DataExport.aspx.cs" AutoEventWireup="false" Inherits="yyyyy.Web.DataExport" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<html>
<head>
<title>DataExport</title>
<link rel="Configuration" href="/xxxxx/yyyyy/DataExport.config">
</head>
<body style="margin:0px;padding:0px;overflow:hidden">
<OBJECT id="DataExport" style="WIDTH: 100%; HEIGHT: 100%; position:absolute; left: 0px; top:0px"
classid="yyyyy.Common.dll#yyyyy.Controls.DataExport"
VIEWASTEXT>
</OBJECT>
</body>
</html>
Файл конфигурации, на который ссылаются:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="yyyyy">
<section name="dataExport" type="yyyyy.Controls.DataExportSectionHandler,yyyyy.Common" />
</sectionGroup>
</configSections>
<yyyyy>
<dataExport>
<layoutFile>http://vm2/xxxxx/yyyyy/layout.xml</layoutFile>
<webServiceUrl>http://vm2/xxxxx/yyyyy/services/yyyyy.asmx</webServiceUrl>
</dataExport>
</yyyyy>
</configuration>
Что я проверил:
- Права безопасности должны быть в порядке, сайт надежен и добавляет исключение URL-адреса, чтобы FullTrust ничего не менял.
- Файл конфигурации доступен по сети, доступ к layout.xml доступен, ASMX отображает список ожидаемых команд
- Machine.config предоставляет разрешение GET для файла usercontrol.config.
Что может показаться мне подозрительным:
- DataExport UserControl ссылается на Aspose.Excel для создания электронных таблиц, которые он экспортирует.
- Когда я перехожу к странице и получаю пустое текстовое поле, запустите
gacutil /ldl
, ничего не будет в локальном кеше загрузки. На рабочей машине при выполнении одной и той же команды после просмотра страницы отображается список стилей DLL, включая DLL управления и DLL Aspose.