本文整理汇总了C#中Topic.ToJson方法的典型用法代码示例。如果您正苦于以下问题:C# Topic.ToJson方法的具体用法?C# Topic.ToJson怎么用?C# Topic.ToJson使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Topic
的用法示例。
在下文中一共展示了Topic.ToJson方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: _local_changed
private void _local_changed(Topic sender, TopicChanged p) {
if(_val==null || sender==null || sender==_present || _val==null || p.Initiator==_val || sender.path==null || !sender.path.StartsWith(_val.path) || p.Art==TopicChanged.ChangeArt.Add) {
return;
}
string path;
if(sender==_val) {
path=_remoteBase;
} else {
path=_remoteBase+sender.path.Substring(_val.path.Length);
}
string content;
if(p.Art==TopicChanged.ChangeArt.Value) {
content=sender.ToJson();
} else {
content="null";
}
Send("P\t"+path+"\t"+content);
}
示例2: Export
public static void Export(string filename, Topic head) {
if(filename == null || head == null) {
throw new ArgumentNullException();
}
XDocument doc = new XDocument(new XElement("xst", new XAttribute("path", head.path)));
if(head.saved) {
if(head.vType != null) {
doc.Root.Add(new XAttribute("v", head.ToJson()));
}
doc.Root.Add(new XAttribute("s", bool.TrueString));
}
foreach(Topic t in head.children) {
Export(doc.Root, t);
}
using(StreamWriter sw = File.CreateText(filename)) {
using(var writer = new System.Xml.XmlTextWriter(sw)) {
writer.Formatting = System.Xml.Formatting.Indented;
writer.QuoteChar = '\'';
writer.WriteNode(doc.CreateReader(), false);
writer.Flush();
}
}
}
示例3: SubChanged
private void SubChanged(Topic t, TopicChanged a) {
if(t.path.StartsWith("/local") || a.Visited(_ses.owner, true) || !MQTT.MqBroker.CheckAcl(_ses.userName, t, TopicAcl.Subscribe)) {
if(_verbose.value) {
X13.Log.Warning("ws.snd({0}) - subscribe:access denied", t.path);
}
return;
}
if(a.Art==TopicChanged.ChangeArt.Remove) {
Send(string.Concat("P\t", t.path, "\tnull"));
if(_verbose.value) {
X13.Log.Debug("ws.snd({0}) - remove", t.path);
}
} else if(a.Art==TopicChanged.ChangeArt.Value) {
Send(string.Concat("P\t", t.path, "\t", t.ToJson()));
if(_verbose.value) {
X13.Log.Debug("ws.snd({0}, {1})", t.path, t.ToJson());
}
} else {
return;
}
}