0
我正在開發一個c#應用程序,其中服務器一次從多個客戶端獲取請求。每個客戶也從不同的數據庫獲取他們的數據。在這種情況下,有時會發生數據泄露,意味着客戶端從不正確的數據庫獲取數據。比如說client1應該從db1獲取數據,而client2從db2獲取數據。相反,他們從對面的數據庫獲取數據client1從db2獲取,client2從db1獲取。 我在下面添加收集數據的代碼。在c中實現隊列#
public string List()
{
Response.ContentType = ContentType.Xml;
try
{
ThingzFilter filter = null;
Dictionary<string, string> parameters = new Dictionary<string, string>();
if (Id!="")
{
// get parameters from http request
foreach (HttpInputItem param in Request.Param)
parameters.Add(param.Name, param.Value);
setServerURLs();
//Request.Clear();
if (Request.QueryString["lang"].Value != null)
{
ThingzDB.TzThing.get_language = Request.QueryString["lang"].Value.ToString();
}
else
{
ThingzDB.TzThing.get_language = SessionDatabase.DefaultLanguage;
}
}
ThingzDatabase db = SessionDatabase;
langStr = db.Language;
// this is run if there was no ID supplied
// which means we want all items of all types
if (Id == "")
{
if (Request.AcceptTypes == null)
{
//TypeController.session_id = Request.QueryString["sessionid"].Value;
jobs.Add(Request.QueryString["sessionid"].Value);
if (nextJobPos > jobs.Count - 1)
return "";
else
{
TypeController.session_id = jobs[nextJobPos];
nextJobPos++;
langStr = SessionDatabase.Language;
}
filter = new AllThingzFilter(SessionDatabase, parameters, langStr);
TypeController.session_id = "";
filter.Execute();
}
在此服務器是控制檯應用程序和客戶端窗口其中站點名稱,意味着數據庫名稱被提及。 請給我一個解決方案來解決這個問題。
難找出你的問題,因爲數據庫相關的問題大多不是客戶端的問題 – Youngjae 2011-12-16 12:22:22