24. februar 2004 - 20:59Der er
7 kommentarer og 3 løsninger
Inkludere et namespace i andre namespaces
Hvordan inkluderer man et namespace i et andet namespace? I det aktuelle tilfælde har jeg lavet noget funktionalitet i et namespace af navn "FTP". Nogle af disse klasser skal jeg bruge i et andet namespace (af navn "WebAo"). Jeg har læst lidt om, at man skal kryptere det første namespace m.m., men vil gerne have det helt nøjagtig forklaret. Så - hvorledes gør man det?
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Nu er FTP en undermappe til WebAo. Skal man ikke pakke hele FTP-namespacet ned i en DLL-fil, includere DLL-filen i en form for globale DLL-filer fra Microsoft og så includere den i det aktuelle namespace vha. "using FTP" ?
Jo, egentlig er det vel lidt fucked up. Jeg har downloaded FTP-namespaced fra nettet - hvor det er lavet som et projekt for sig med solutionfil og det hele. Det er denne FTK-funktionalittet, som jeg gerne vil benytte i et projekt, som jeg selv laver. Jeg har forsøgt at gøre det ved, at lave mit eget projekt (WebAo), hvor jeg så har unzipped det downloadede FTP-projekt/namespace ind i en mappe (FTP) inde i WebAo. Dette giver dog nogle problemer. Bl.a. har jeg så 2 assemblies og 2 web.config. Og det tror jeg ikke helt går så godt (?). Den vrokker sig i hvert fald også, når jeg kompilerer skidtet. Så derfor vil jeg gerne unzippe FTP-projektet i en virtuel mappe for sig selv, gøre den resulterende DLL-fil tilgængelig globalt og derpå lave mit eget projekt, hvori jeg benytter al funktionalitetten fra det downloadede FTP-projekt. Er det ikke muligt?
Inde i BIN-mappen af det downloadede ligger der både "FTP.DLL", "FTP.pdb" og "Microsoft.Web.UI.WebControls.dll". Under kompilering klager den også over manglende reference til "Microsoft.Web.UI.WebControls.dll". Men hvordan laver jeg den reference? Jeg kan da ikke bare skrive "using FTP.dll" - for den ved jo ikke hvor den ligger. Derfor vil jeg lave en global gældende DLL-samling, som jeg altid kan referere til (hvilket jeg har læst lidt om, men ikke kan hitte ud af)...
I dit eget projekt vælger du "References" i solution explorer. Højreklik på "References" og vælg "Add reference". Browse nu efter FTP.DLL. Nu laver Visual studio en absolut sti til FTP.DLL'en.
Men hvis du kører dit program uden for Visual Studio, så skal FTP.DLL blot ligger samme sted som dine egne DLL'er. (Men lav først overstående reference).
I din kode kan du nu bruge den ved at skrive "using FTP."
Lav desuden en reference til Microsoft.Web.UI.WebControls.dll på samme måde.
Er det det eneste, man skal gøre? Jeg har nemlig gjort noget lignende, men det fungerede ikke rigtig (derfor dette spørgsmål ;-) ). Men hvad så med når jeg kører det udenfor Visual Studio? Hele meningen er jo, at jeg kan starte det op i browseren...og at andre på netværket også kan starte det op i deres browser???
og kan man så godt have 2 stk web.config-filer? Altså benytte det downloadede projekt (med tilhørende web.config) inde i sit eget projekt (med en ny web.config)?
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.