Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
How can one class set a property to be seen by another c
Message
De
27/02/2013 09:28:44
 
 
Information générale
Forum:
ASP.NET
Catégorie:
Code, syntaxe and commandes
Versions des environnements
Environment:
C# 4.0
OS:
Windows 7
Network:
Windows 2003 Server
Database:
MS SQL Server
Divers
Thread ID:
01566989
Message ID:
01567030
Vues:
27
>>>Hi everybody,
>>>
>>>In the base class I defined a public property with simple
>>>
>>>Public InvokeString {get;set;}
>>>
>>>I have two classes that inherit from that main class. In one of the classes I have a method where I can set this property. My problem is that I want another class to be able to read that new property value.
>>>
>>>Is there a way to solve it? Should I use static keyword here for the property only?
>>
>>Not sure I understand your requirement but I don't see how 'static' would help. Maybe something like this?:
    public  class ClassA
>>	{
>>        protected  virtual string InvokeString { get; set; }
>>	}
>>
>>    public class ClassB : ClassA
>>    {
>>        public void SetInvokeString(string s)
>>        {
>>            base.InvokeString = s;
>>        }
>>        
>>        public new string InvokeString
>>        {
>>            get { return base.InvokeString; }
>>        }
>>    }
>
>This doesn't seem to work for me. I implemented it this same way and added the methods SetInvokeString and new String InvokeString in both classes. However, after I set the property in one class, the same property in another class is still null.
>
>Here is what I have in the base class:
>
>
>  protected virtual String InvokeString { get; set; }
>
>I have two separate classes that inherit from this one. In both I added the exact same code as you showed.
>
>One of them has
>
>
>  public String Invoke(String input)
>      {
>         Dictionary<String, String> parameters = new Dictionary<String, String>(StringComparer.OrdinalIgnoreCase);
>
>         this.SetInvokeString(input);
>
>
>And in the other class I added also both methods and I have this code:
>
>
>Logging.Log(String.Format("Calling Remote VoidPaymentPlanPass On {0} with: ", ip, this.InvokeString));
>
>When I debug my test I see that this.InvokeString is null.
>
>What did I do wrong?

Works for me
Gregory
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform