Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Komma åt DAL från flera ställen...?

Postades av 2006-01-31 13:31:04 - Björn Johansson, i forum arkitektur, Tråden har 13 Kommentarer och lästs av 1314 personer

Har utvecklat ett DAL som jag kör i GAC'en på en server (A). Funkar kanon.

Nu vill jag bygga en applikation (eller webservice) som skall köras på en annan server (B) och som jag vill skall använda DAL som finns på den första servern (A).

Visst, det är inga större problem att publicera DAL'en i GAC'en (vilka jäkla ord!) på den andra servern (B). Men helst skulle man vilja ha DAL endast på ETT ställe/server. Speciellt då man kanske har 3-4 servrar att jobba med, som alla behöver samma generella DAL.

Hur kan man göra, annat än att installera DAL'en på flera maskiner?
I mitt fall är det ett intrnät vi pratar om.

Tacksam för lite råd.


Svara

Sv: Komma åt DAL från flera ställen...?

Postades av 2006-01-31 14:34:25 - Magnus Gladh

Gör om ditt DAL till en services. Som du kan accessa från flera maskiner.

Om det är ett intranet (endast .NET) så föreslår jag att du använder dig av Remoting och binary som protokoll.

Definera ett Interface för ditt DAL som du låter DAL:et implementera och sedan så kan du använda dig av det interface på dina andra maskiner när de vill skapa kopplingar till ditt DAL.

- M


Svara

Sv:Komma åt DAL från flera ställen...?

Postades av 2006-01-31 15:11:53 - Björn Johansson

Jobba med Interface är fortfarande överkurs för mig, måste få mer grepp om det innan jag gör någonting skarpt.

Men göra om DAL till en service (inte webservice! som jag läste först) är kanske en bra idé. Hur kommer jag åt servicen från andra maskiner då?
(Ska googla lite)


Svara

Sv: Komma åt DAL från flera ställen...?

Postades av 2006-01-31 15:34:45 - Patrik Löwendahl

Med remoting.

Du har egentligen fyra kommunikations vägar att välja på i .NET, Web Service, Remoting, MSMQ, TcpClient / Server.

Där, för ditt scenario, Remoting lämpar sig bäst. Ett varnande finger dock. Om deployment av din DAL är det enda du oroar dig för så är distribution på det här sättet inte bra i ditt projekt. Du kommer hur du än gör att skapa overhead och sänka prestandan i din applikation.

Läs mer om distribution här: http://www.lowendahl.net/showShout.aspx?id=90


Svara

Sv:Komma åt DAL från flera ställen...?

Postades av 2006-01-31 15:50:43 - Björn Johansson

Ja det är faktiskt deployment jag oroar mig mest för, vilket jag kanske inte borde när det rör sig om max 4 servrar som kommer använda den här komponenten. Men det underlättare helt klart att ha den på ett ställe, speciellt eftersom det är andra än jag som skall utveckla i miljön.

Web Service vill inte köra till detta. Ska kolla upp remoting.



Svara

Sv: Komma åt DAL från flera ställen...?

Postades av 2006-01-31 16:21:58 - Ola Lindfeldt

Om det mest är deployment du är bekymrad över kanske du i stället ska försöka hitta en lösning för att auomatisera det. I ditt fall har du antagligen inget övrigt att vinna på att köra remoting.


Svara

Sv:Komma åt DAL från flera ställen...?

Postades av 2006-01-31 16:52:24 - Björn Johansson

Precis.
Så nu har egentligen min fråga svängt.
Utvecklar mot en utvecklingsserver. Så hur automatiserar med ett deployment när jag (eller någon annan) vidareutvecklat DAL komponenten?

Antar att det går att fixa med en BAT-fil som:
1. Kompilerar koden
2. Installerar komponenten i GAC på servrarna (med gacutil.exe)
3. Lägger ny version i machine.config
Sista steget (3), svårt att lösa i en BAT-fil.

Eller finns det smidigare sätt...hoppas jag?




Svara

Sv: Komma åt DAL från flera ställen...?

Postades av 2006-01-31 17:23:41 - Ola Lindfeldt

Vad gör du i machine.config? Du behöver inte göra nåt där för att installera i GAC.


Svara

Sv:Komma åt DAL från flera ställen...?

Postades av 2006-01-31 21:21:02 - Patrik Löwendahl

Kolla på NAnt, CruiseControl.Net, Group Policies. Där kan du automatisera den här typen av jobb. F.ö. kan du uppdatera Machine.Config med ett vbscript om det skulle behövas, men jag har aldrig varit med om att man måste göra ngt i den för att få gacen att rulla??


Svara

Sv:Komma åt DAL från flera ställen...?

Postades av 2006-02-01 08:58:02 - Björn Johansson

"Vad gör du i machine.config? Du behöver inte göra nåt där för att installera i GAC."

Lägger till komponenten i <assemblies><add assembly...>.
Trodde man behövde det för att köra komponenten i tex ASP.NET?


Svara

Sv: Komma åt DAL från flera ställen...?

Postades av 2006-02-01 09:14:59 - Ola Lindfeldt

Det behövs inte, var har du fått det ifrån?


Svara

Sv:Komma åt DAL från flera ställen...?

Postades av 2006-02-01 09:53:01 - Björn Johansson

Det är ju bra att inte det behövs.
Läste det i en wrox bok (ado.net programming) för ganska länge sedan. Tog en del ideér från den när jag byggde mitt DAL. I samma kapitel gick man igenom GAC. Avslutningsvis addade man komponenten i machine.config. Kommer inte ihåg varför faktiskt och jag har inte reflekterat över detta då de komponnenter jag lagt i GACen alltid fungerat när jag gjort på detta vis.

Men att hålla på dona i machine.config har jag alltid tyckt varit ett aber.
Glad att slippa det...ska självklart testa. Tack!


Svara

Sv: Komma åt DAL från flera ställen...?

Postades av 2006-02-01 11:03:08 - Björn Johansson

Klart det funkade utan inblandnign av machine.config.

[quote]
Gör om ditt DAL till en services. Som du kan accessa från flera maskiner.

Om det är ett intranet (endast .NET) så föreslår jag att du använder dig av Remoting och binary som protokoll.

Definera ett Interface för ditt DAL som du låter DAL:et implementera och sedan så kan du använda dig av det interface på dina andra maskiner när de vill skapa kopplingar till ditt DAL.
[/quote]

Tycker detta låter intressant. Förklara gärna mer runt interfacet!
Vet någon läsvärde artiklar/länkar (förurom dom bra inläggen här på detta forum som jag redan läst).


Svara

Sv:Komma åt DAL från flera ställen...?

Postades av 2006-02-02 07:55:15 - Magnus Gladh

Här kommer några länkar om remoting:

http://www.csharpfriends.com/Articles/getArticle.aspx?articleID=62
http://www.codeproject.com/csharp/absoluteremoting.asp
http://www.c-sharpcorner.com/Remoting.asp
http://www.csharphelp.com/archives2/archive460.html

Du måste inte använda Interface när du använder Remoting, men det är att föredra då du inte vill ha en stark koppling mellan din klient och server, utan du vill ha en koppling klient till interface till server.

Det man gör är att man gör en server där man implemeterar interfacet, och på klient sidan så skapar man sedan en proxy klass ("görs automatiskt") som är av typen interfacet. Vilket gör att om du på server sidan har en metod som heter int Add(int a, int b), så kan du på klient sidan skriva:

...
IServer server = (IServer)Activator.GetObject(
                typeof(Iserver),
                "tcp://localhost:8085/Server");

int svar = server.Add(10,15);
...


Och eftersom man jobbar mot interfacet och inte server objektet direkt så får man ingen start koppling mellan klient och server, vilket är att föredra, då man säkert kommer att ändra sitt server objekt, och glömma att kopiera över den senast versionen till klienten :)

- M


Svara

Nyligen

  • 21:28 Chicken Road Casino Game
  • 21:21 1xBet Promo Code 2025
  • 18:37 Remove the bumper in AUDI
  • 15:35 Chicken road crash game
  • 21:41 Automotive Services UK
  • 20:44 Erfarenhet av CBD-olja mot sömnpro
  • 12:13 Sex Dolls for Sale
  • 19:42 Online Casinos for Haitian Players

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 920
27 965
271 780
9 424
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies