Proprietà di una classe

mercoledì 22 agosto 2007 - 10.47

denis.basei Profilo | Senior Member

Ho un problema un pò difficile da spiegare... ci provo...
Ho una classe di nome FinsCom che deve essere usata da due applicazioni distinte. Ho la necessitò che alcune vaiabili della classe siano condivise fra le due applicazioni. Banalmente se VAR01 viene incrementato a 1 dall'applicazione 1, l'applicazione 2 deve trovare nella propria istanza di classe VAR01 a 1. Ciò è possibile e se si come?



Denis

SSUPERPIPPO Profilo | Guru

Direi che potresti creare una variabile pubblica per la tua applicazione da passare in reference alla tua classe quando la istanzi.
In questo modo quando la classe modifica il valore della variabile, questa varia a livello di applicazione e quindi se utilizzata nello stesso modo anche da altre classi, il contenuto risulta sincronizzato.

Spero di essermi spiegato, se hai bisogno di chiarimenti sono a disposizone.

ciao

Alessandro

denis.basei Profilo | Senior Member

Nel caso di due applicazioni, una che gira su un client A e l'altra su un client B, ed entrambe passano la variabile, dichiarata pubblica, in reference quando istanziano la classe, sono ancora sincronizzato? Credo di no perchè ogni pc istanzia una classe diversa (in parole povere ogni client ha una copia distinta della dll), purchè non si possa condividere la classe in rete, però vado per ipotesi perchè non l'ho mai fatto e non so nemmeno se si possa fare....


Grazie per l'interessamento.


Denis

SSUPERPIPPO Profilo | Guru

Ciao,

scusami avevo letto male il thread.

Ora analizzo il problema e vedo se riesco ad aiutarti...

A dopo...

denis.basei Profilo | Senior Member

Grazie...

kuka Profilo | Newbie

usare una classe statica no?
ti serve proprio una classe che venga istanziata?

denis.basei Profilo | Senior Member

Se fosse statica perchè risolverei il problema?


Denis

kuka Profilo | Newbie

ogni variabile all'interno della classe è statica, quindi anche la variabile che ti serve sia condivisa.
In questo modo, dopo aver eseguito l'init della classe, potrai usarla ovunque e leggere il valore che ti interessa da qualasiasi posizione.
Ti faccio un esempio: tempo fa dovevo implementare un database: ho creato una classe statica che conteneva un hashtable. Anche l'hashtable era ovviamente statica e da qualsiasi altra classe potevo leggere i valori correnti dell'hashtable.
Potrai leggere il valore nella forma MYStaticClass.MyStaticValue

SSUPERPIPPO Profilo | Guru

>Nel caso di due applicazioni, una che gira su un client A e l'altra su un client B, ed entrambe passano la variabile, dichiarata >pubblica, in reference quando istanziano la classe, sono ancora sincronizzato? Credo di no perchè ogni pc istanzia una classe >diversa (in parole povere ogni client ha una copia distinta della dll), purchè non si possa condividere la classe in rete, però vado >per ipotesi perchè non l'ho mai fatto e non so nemmeno se si possa fare....

Ho fatto una ricerca ma non si trova nulla che faccia pensare alla possibilità di passare variabili tra applicazioni diverse.

Per quanto riguarda la tua ipotesi di condividere la classe in rete, non è una soluzione perchè in ogni caso ogni applicazione crea un'istanza della classe che gode di vita propria; l'ambito di visibilità delle variabili è limitato alla stessa istanza.

Mi riprometto di effettuare ulteriori ricerche anche se sono abbastanza scettico a riguardo.

Ti faccio sapere se trovo qualcosa

Ciao

Alessandro

denis.basei Profilo | Senior Member

Ti ringrazio, nel frattempo ho trovato una strada diversa per portare avanti il mio progetto. Se trovi qualcosa sarò molto curioso di avere tue notizie. grazie mille!

Denis
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5