我想保存(和加載)一個合理的長字符串緩存類字符串(MAXLEN = 1024000)屬性。Intersystems緩存字符串作爲%Stream.GlobalCharacter
串大約32,000個字符長,而不是存儲字符串內容(這是它的價值JSON對象),它存儲
[email protected]%Stream.GlobalCharacter
當我嘗試加載和在我的C#程序中的字符串內容我從字面上得到上面的字符串,我沒有得到JSON。當通過Cache web和終端接口查看錶格時,我也可以看到上面的字符串。
我有另一個約23,000個字符長的JSON字符串,保存和加載沒有問題。
我明白[email protected]%Stream.GlobalCharacter
是存儲數據的方式,但我想能夠輕鬆地加載/保存爲一個字符串。
更新
我試圖將數據保存在我的C#ASP.Net應用程序如下
sql = "INSERT INTO Namespace.Table (Name, Active, Revision, Definition) VALUES (?, 1, ?, ?)";
cC = new CacheCommand(sql, dbConn);
cC.Parameters.Add(new CacheParameter("name", formType)); // string
cC.Parameters.Add(new CacheParameter("revision", revision)); // int
cC.Parameters.Add(new CacheParameter("definition", formData)); // string
cC.ExecuteNonQuery();
我加載數據如下
string sql = "SELECT TOP 1 * FROM Namespace.Table WHERE Active = 1 AND Name = ? ORDER BY Revision DESC";
CacheCommand cC = new CacheCommand(sql, dbConn);
cC.Parameters.Add(new CacheParameter("name",formType));
CacheDataReader rdr = cC.ExecuteReader();
while(rdr.Read())
{
string json = rdr["Definition"].ToString();
}
這有點難以幫助,雖然我不確定如何保存和加載數據,它只是.Net代碼或COS。如果可能的話,需要來自雙方的代碼的一些例子。 – DAiMor
對不起,使用C#代碼更新了問題 –
我對.Net並不是很熟悉,但是因爲我看到您使用了ToString(),所以在這種情況下,您當然只會獲得此對象的類。我認爲你應該在轉換爲String之前得到這個對象。 – DAiMor