TestReadonly

 

using

 

System;

 

using

 

System.Collections.Generic;

 

using

 

System.Linq;

 

using

 

System.Text;

 

namespace

 

TestReadonly

{

 

 

classProgram

 

{

 

 

staticvoid Main(string[] args)

{

 

 

SupplementMapper sm = newSupplementMapper();

sm.Test();

 

System.

Console.ReadLine();

}

 

}

 

 

classSupplementMapper

{

 

 

readonlyDataLog _dataLog;

 

public SupplementMapper()

{

 

_dataLog =

newDataLog(0);

}

 

 

publicDataLog DataLog { get { return _dataLog; } }

 

publicvoid Test()

{

 

ShowVal();

 

 

var importer = newImporter();

importer.DataLog = _dataLog;

 

importer.Execute();

 

 

 

ShowVal();

 

}

 

 

publicvoid ShowVal()

{

 

System.

Console.WriteLine("val is {0}", DataLog.GetVal());

}

 

}

 

 

publicclassDataLog

{

 

 

int TestVal;

 

public DataLog(int val)

{

 

TestVal = val;

 

}

 

 

publicint GetVal()

{

 

 

return TestVal;

}

 

 

publicvoid SetVal(int newval)

{

 

TestVal = newval;;

 

}

 

}

 

 

publicclassImporter

{

 

 

publicDataLog DataLog { get; set; }

 

publicvoid Execute()

{

 

DataLog.SetVal(100);

 

}

 

}

 

}

posted on 2011-09-22 19:07  子虚乌有  阅读(168)  评论(0)    收藏  举报