2017-06-01 1 views
0

, wie Sie alle wissen, haben wir einfachspeichern Daten wie Session und Cache in asp mvc

Session["kurd"]=""; 

oder

Cahce.Insert(...)

und seine speichern Daten im Speicher verwenden; seine Daten speichern ohne serialisieren oder so etwas, so können wir einfach alles speichern

aber es ist nicht zuverlässig, um Daten zu speichern;

so kann euch sagen, dass Sie auf Datenbank oder Datei, aber in meinem Fall speichern kann es getan werden kann nicht, weil meine Daten seiner nicht serialisierbar, und ich kann nur in Cache speichern, Sitzung , viewdata, viewbage , ... weil es nicht erforderlich ist, Daten zuerst zu serialisieren; und weil von nicht Zuverlässigkeit in der Sitzung, Cache, ... i Art und Weise wollen die Daten wie Cache und Session, ... ohne serialize Daten

jemand weiß sparen können, wie wir so etwas tun kann (sparen Daten) in der Festplatte ich meine Daten auf der Festplatte speichern, genau wie Sitzung auf Speicher getan hat?

Update:

der Datentyp Instanz dieser Klasse in Bild, das enthalten Httpclient, httpclienthandeler, -deviceinfo, ...

enter image description here

Update:

wie wunderbar es ist, dass niemand weiß, wie kann ich Daten in der Festplatte speichern nur so was Sitzung im Speicher getan hat keine Frage kein serialize no bs, nur speichern Sie es sehr einfach

+0

Speichern in Textdatei oder so? – User3250

+0

Wenn Sie sagen, dass es nicht serialisierbar ist, welche Daten möchten Sie speichern? Können Sie Beispiele veröffentlichen? – Wheels73

+0

@ Wheels73 Tanks für Ihre Antwort ich aktualisiere es –

Antwort

0
genannt

ich dieses Problem gelöst Httpclient kippe werden serialisiert aber fand ich heraus, dass das einzige, was in Httpclient, dass wir in dieser speichern sollte Gewinde ist „Cookie“ so serlize und deserilze wie diese

var formatter = new SoapFormatter(); 
string file = "..\cookies.dat"; 
// 
using (Stream s = File.Create (file)) 
    formatter.Serialize(s, cookies);        
// 
CookieContainer retrievedCookies = null; 
using (Stream s = File.OpenRead (file)) 
    retrievedCookies = (CookieContainer) formatter.Deserialize(s); 

so serialisiert ich es und speichern und dann für neue Verwendung i schaffen neue Httpclient und weisen, dass CookieContainer bis HttpClent.Cookie

dieses Problem war für Instasharper

2

Programmgesteuert können Sie ObjectDumper verwenden.

Oder, wenn Sie debuggen, Sie ein Visual Studio-Erweiterung Object Exporter können

+0

funktioniert nicht auf dieses Problem :(, Panzer sowieso –