Thanks Dario,

I tried as u said by copying my changed code dll into path LightStreamer\Lightstreamer\DOCS-SDKs\sdk_adapter_dotnet\examples\DotNetStockListDe mo\Deployment\Deployment_DotNet_Server(custom)\dot net_1.1

but no changes are reflecting (according to changed code) when i run the stocklist demo adapter, in the front end it is showing the same old data of stocllist demo.

Even I checked by removing the files :
DotNetStockListDemo.dll
DotNetStockListDemo.pdb
DotNetStockListDemoLauncher.exe.config
DotNetStockListDemoLauncher.pdb
DotNetAdapter.pdb

from path: LightStreamer\Lightstreamer\DOCS-SDKs\sdk_adapter_dotnet\examples\DotNetStockListDe mo\Deployment\Deployment_DotNet_Server(custom)\dot net_1.1

and when I run the stock list demo adpter, it is running successfully in the browser with the same old data (I am not getting how it is happening).

actually I built a solution called DotNetStockListDemo and to the solution i added ExternalFeed.cs , StockList.cs classes & i took the reference of DotNetAdapter from path : LightStreamer\Lightstreamer\DOCS-SDKs\sdk_adapter_dotnet\examples\DotNetStockListDe mo\Deployment\Deployment_DotNet_Server(custom)\dot net_1.1
and i made following changes to the added clases

ExternalFeed.cs[/COLOR]

namespace Lightstreamer.Adapters.Data.StockListDemo {


public interface IExternalFeedListener {

void OnEvent(string itemName, IDictionary currentValues, bool isSnapshot);
}


public class ExternalFeedSimulator {


private IDictionary _stockGenerators;

private IExternalFeedListener _listener;

private IList _snapshotQueue;
private Thread _snapshotSender;

public ExternalFeedSimulator() {
_stockGenerators= new Hashtable();
_snapshotQueue= new ArrayList();


public void Start() {
if (_snapshotSender != null) return;

for (int i = 0; i < 10; i++) {
string itemName= "item" + (i + 1);

ExternalFeedProducer myProducer = new ExternalFeedProducer(itemName);
//End of Inder
_stockGenerators[itemName]= myProducer;
myProducer.SetFeedListener(_listener);
myProducer.Start();
}

_snapshotSender= new Thread(new ThreadStart(Run));
_snapshotSender.Start();
}

private void Run() {
IList snapshots= new ArrayList();
do {
lock (_snapshotQueue) {
if (_snapshotQueue.Count == 0)
Monitor.Wait(_snapshotQueue);

snapshots.Clear();
while (_snapshotQueue.Count > 0) {
ExternalFeedProducer myProducer= (ExternalFeedProducer) _snapshotQueue[0];
snapshots.Add(myProducer);
_snapshotQueue.RemoveAt(0);
}
}

foreach (ExternalFeedProducer myProducer in snapshots) {
_listener.OnEvent(myProducer.GetItemName(), myProducer.GetCurrentValues(true), true);
}

} while (true);
}


public void SetFeedListener(IExternalFeedListener listener) {
_listener= listener;

foreach (ExternalFeedProducer myProducer in _stockGenerators.Values) {
myProducer.SetFeedListener(listener);
}
}


public void SendCurrentValues(string itemName) {
ExternalFeedProducer myProducer= (ExternalFeedProducer) _stockGenerators[itemName];
if (myProducer == null) return;

lock (_snapshotQueue) {
_snapshotQueue.Add(myProducer);
Monitor.Pulse(_snapshotQueue);
}
}
}

public class ExternalFeedProducer {
public string _itemName;


private IExternalFeedListener _listener;
private Thread _thread;



#region [Indrajit - Variables]
private string b1;
private string b2;
private string b3;
private string b4;
#endregion

public ExternalFeedProducer(string name)
{
_itemName = name;
b1 = "b1";
b2 = "b2";
b3 = "b3";
b4 = "b4";
}


public string GetItemName() {
return _itemName;
}

public void SetFeedListener(IExternalFeedListener listener) {
lock (this) {
_listener = listener;
}
}

public void Start() {
lock (this) {
if (_thread != null) return;

_thread = new Thread(new ThreadStart(Run));
_thread.Start();
}
}

private void Run() {
do {
int waitMillis= 1000;
Thread.Sleep(waitMillis);

//ComputeNewValues();
if (_listener != null)
_listener.OnEvent(_itemName, GetCurrentValues(false), false);

} while (true);
}


public IDictionary GetCurrentValues(bool fullData) {
lock (this) {
IDictionary eventData = new Hashtable();


eventData.Add("IMAGE-1", b1);
eventData.Add("IMAGE-2", b2);
if (fullData)
{
eventData.Add("IMAGE-3", b3);
eventData.Add("IMAGE-4", b4);
}





return eventData;
}
}


}

}


StockList.CS

namespace Lightstreamer.Adapters.Data {



public class StockListDemoAdapter : IDataProvider, IExternalFeedListener {

private IDictionary _subscribedItems;
private ExternalFeedSimulator _myFeed;

private IItemEventListener _listener;

public StockListDemoAdapter() {
_subscribedItems= new Hashtable();

_myFeed= new ExternalFeedSimulator();
}

// ////////////////////////////////////////////////////////////////////////
// IDataProvider methos

public void Init(IDictionary parameters, string configFile) {
_myFeed.SetFeedListener(this);
_myFeed.Start();
}

public void SetListener(IItemEventListener eventListener) {
_listener= eventListener;
}

public void Subscribe(string itemName) {
if (!itemName.StartsWith("item"))
throw new SubscriptionException("Unexpected item: " + itemName);

lock (_subscribedItems) {
if (_subscribedItems.Contains(itemName)) return;

_subscribedItems[itemName]= false;
}
_myFeed.SendCurrentValues(itemName);
}

public void Unsubscribe(string itemName) {
if (!itemName.StartsWith("item"))
throw new SubscriptionException("Unexpected item: " + itemName);

lock (_subscribedItems) {
_subscribedItems.Remove(itemName);
}
}

public bool IsSnapshotAvailable(string itemName) {
if (!itemName.StartsWith("item"))
throw new SubscriptionException("Unexpected item: " + itemName);

return true;
}

// ////////////////////////////////////////////////////////////////////////
// IExternalFeedListener methods

public void OnEvent(string itemName,
IDictionary currentValues,
bool isSnapshot) {
lock (_subscribedItems) {
if (!_subscribedItems.Contains(itemName)) return;

bool started = (bool) _subscribedItems[itemName];
if (!started) {
if (!isSnapshot)
return;

_subscribedItems[itemName]= true;
}
else {
if (isSnapshot) {
isSnapshot = false;
}
}



_listener.Update(itemName, currentValues, isSnapshot);
}
}
}

}

I want my changes to be reflected in front end (means after launching lightstreamer server when I browse to the adapter the chages should be reflected there).

for that what should I do ?
can any one help by giving the sequence of steps to achieve the specified task above.

Thanks,