2010-12-30 15 views
5

mam różne dll, że nie jestem bezpośrednio odwołujące się na stronie internetowej ASP.NET Mam próbuje publikować za pomocą funkcji „Package/Publish Web” w Visual Studio 2010.Jak dołączyć nieodwołaną bibliotekę dll podczas publikowania aplikacji internetowej?

Jak mogę powiedzieć, że z funkcji publikowania musi zawierać te określone pliki?

Należy zauważyć, że nie chcę bezpośrednio odwoływać się do tych bibliotek dll (rozwiązanie zostało specjalnie skonfigurowane w taki sposób, że te specyficzne biblioteki dll nie są bezpośrednio przywoływane).

Znalazłem <ExcludeFilesFromDeployment/>, ale nie mogę znaleźć sposobu, aby szczególnie uwzględnić pliki.

+0

Czemu przeciwieństwie do tylko odnosząc się do biblioteki DLL ? – Jacob

+1

Jeśli odwołanie do bibliotek dll zostanie określone, programista może użyć tych klas bezpośrednio w tych bibliotekach DLL, zamiast używać warstw abstrakcji, które ustawiłem. Konkretniej, mam interfejsy w jednym projekcie (do którego się odwołuje) oraz konkretną implementację w innym projekcie (który nie jest wymieniony). Wszystko to jest połączone za pomocą kontenera DI, a prosty wpis w pliku konfiguracyjnym wszystko podciąga. Nie chcę, żeby programista ominął tę infrastrukturę. –

+1

Tak Oded, w idealnym świecie, naruszenia te zostaną wykryte przez nDepend. Nie chodzi o to, że nie ufam twórcom (z których jestem bardzo mocno związany), że chciałbym ich poprowadzić do "dołu sukcesu". Jeśli mogę uprościć odniesienia do projektu, aby zespół nie mógł łatwo wpaść w kłopoty, to jest to wygrana. W zespole o zróżnicowanym poziomie doświadczenia w wielu projektach, na wielu platformach, każda wygrana jest doceniana. –

Odpowiedz

1

Będzie publikować tylko z folderów w witrynie. Od zawsze miałem na stronie odnośniki do tych plików, więc kiedy je zbudowałem, były one wtedy lokalne dla witryny i byłyby publikowane wraz ze wszystkim innym.

+0

Istnieje wtyczka do Visual Studio, która zrobi to, co chcesz. http://www.codedigest.com/Articles/VisualStudio/126_Web_Deployment_Project_for_Visual_Studio_2005_and_2008.aspx – phillip

+0

vs 2010 wersja też: http://blogs.msdn.com/b/webdevtools/archive/2010/05/26/visual-studio-2010 -web-deployment-projects-rtw-available-now.aspx – phillip

+0

Dzięki Phillip - sprawdzę te linki. –

4

Możesz dodać je do projektu (tak jak dodać zdjęcie) i zmień właściwość Kopiuj do wyjścia Dyrektorium do Copy jeśli Nowszy. Następnie, po zbudowaniu, należy je umieścić w koszu. To powinno działać, gdy publikujesz.

+0

Jest to z pewnością opcja, nawet jeśli jest to trochę hack. Dzięki! –

+1

Tak. Mieliśmy rozwiązanie podobne do tego, co robisz, kiedy używaliśmy Unity i odczuwam twój ból. Użyliśmy zdarzeń budowania postów, aby wepchnąć bibliotekę DLL do kosza, ale podczas publikowania musieliśmy pamiętać o ręcznym przechwytywaniu. – Josh

Powiązane problemy