Удаление директивы CompilerOptions для взаимодействия
Вопрос
Я создал взаимодействие для COM-dll через tlbimp
и добавил его в кеш сборок.Чтобы использовать это на странице ASP.net, мне нужно включить следующее
<%@ Page Language="VB" Debug="true" CompilerOptions='/R:"C:\Program Files\blah\blah\LIBRARY.dll"'%>
<%@ Import Namespace=LIBRARY %>
Зачем мне директива CompilerOptions, если она находится в кеше сборок?Могу ли я упростить и централизовать это?
Решение
Вы должны иметь возможность добавлять ссылку так же, как и любую другую ссылку на сборку.Вот и всё /Р:делает.
РЕДАКТИРОВАТЬ:Если вы не создаете веб-приложение где-то явно, лучше всего использовать /R в файле aspx.Причина, по которой вам это нужно, заключается в том, что ASP.NET эффективно создает приложение за вас, и что-нибудь ему необходимо указать, на какую библиотеку следует ссылаться, даже если эта библиотека находится в GAC.Это похоже на обычные ссылки на сборки в проекте Visual Studio: если вы удалите ссылку на System.Xml
, вы не сможете использовать классы XML, даже если эта сборка находится в GAC.