Сборки, скачиваемые браузером. ASP.NET 2.0
От: hatroman  
Дата: 28.08.06 15:26
Оценка:
Добрый день, Все.
Столкнулся с такой проблемой:
Пишу некоторую сборку на C#(допустим с Namespace ClassLibrary1 и именем единственного класса Class1),которая имеет единственный метод HelloWorld()
namespace ClassLibrary1
{
    public class Class1
    {
        public string HelloWorld()
        {
            return "Hello, World";
        }
    }
}

затем создаю веб-приложение ASP.Net 2.0 с единственной страничкой default.aspx, на которой размещаю тег <object>

<OBJECT id="hello" classid="ClassLibrary1.dll#ClassLibrary1.Class1" width="0" height="0" VIEWASTEXT>
</OBJECT>


Сборку кладу в ту же папку, где лежит default.aspx (ну и кстати в IIS настраиваю виртуальный каталог, который смотрит туда же).
Затем пишу простой клиентский скрипт:

<script language="jscript">
    alert(hello.HelloWorld())
</script>




ну и наконец то добрались собственно до самого вопроса.
Если приведенный выше код скомпилировать под 2.0, то скрипт выбрасывает alert с текстом "undefined". Если же я этот же код компилирую в сборку под .Net Framework 1.1, то alert чудесным образом выбрасывает "Hello, World".
В обоих случаях сборка есть в папке "Windows\assembly\Download". Создается впечатление, что сборку, скомпилированную под .Net 2.0, фреймворк просто зарубает и не дает ей пользоваться, возможно нужно поковыряться в безопасности? Я дал FullTrust на все site на моей машине (где находится и приложение и скачиваемая сборка)

Может кто-нибудь знает что такого изменилось в asp.net 2.0, что я не могу использовать скачанную сборку на клиенте?

P.S. Перед каждым экспериментом очищаю GAC (для верности с помощью "gacutil /cdl").

Прошу помощи в этом вопросе...
Сборки, скачиваемые браузером. ASP.NET 2.0
От: Аноним  
Дата: 29.08.06 06:15
Оценка:
Посмотри в Local Settings\Temporary Internet Files файл с ошибками загрузки.


данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Re: Сборки, скачиваемые браузером. ASP.NET 2.0
От: Аноним  
Дата: 29.08.06 12:56
Оценка:
Здравствуйте, mclabman, Вы писали:

M>Посмотри в Local Settings\Temporary Internet Files файл с ошибками загрузки.


M>
данное сообщение получено с www.gotdotnet.ru

M>ссылка на оригинальное сообщение


На самом деле все таки проблема оказалась в безопасности. В AssemblyInfo.cs должны быть такие строчки:

[assembly: ComVisible(true)]
[assembly: System.Security.AllowPartiallyTrustedCallers()]

И тогда все замечательно
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.