我刚刚使用Windows服务项目模板在Visual Studio中创建了一个Windows服务应用程序.当我安装并运行该服务时,我注意到它会自动将某些事件记录到Windows应用程序事件日志中.例如:
服务已成功启动.
要么
PowerEvent由服务成功处理.
我打算用更详细的方式实现我自己的事件记录,因此这些自动生成的消息最终会成为额外的"噪音",我不想让日志混乱.有没有办法阻止服务将默认消息写入事件日志?
在python运行时环境中,尝试以下方法:
>> *type(01207)*
Run Code Online (Sandbox Code Playgroud)
你会得到:
<type 'int'>
Run Code Online (Sandbox Code Playgroud)
然后尝试:
>> *type(01208)*
Run Code Online (Sandbox Code Playgroud)
你会得到:
File "<stdin>", line 1
type(01208)
^
Run Code Online (Sandbox Code Playgroud) 我有以下代码尝试反序列化JSON字符串,该库给我这个错误:
在JSON参考对象中找到的其他内容.JSON引用对象应该只有$ ref属性.路径'user.obj',第1行,第34位.
知道什么是错的吗?(我知道它正在抱怨第二个$ ref,但我不知道为什么.)解决方法是什么?
void Main()
{
var s = "{\"user\": {\"$ref\": \"123456\", \"obj\": {\"$ref\": \"123456\"}}}";
JsonConvert.DeserializeObject<Root>(s).Dump();
}
// Define other methods and classes here
public class Root
{
[JsonProperty("user")]
public User User { get; set; }
}
public class User
{
[JsonPropertyAttribute("$ref")]
public string Ref { get; set; }
[JsonPropertyAttribute("obj")]
public Obj Obj { get; set; }
}
public class Obj
{
[JsonPropertyAttribute("$ref")]
public string Ref { get; set; }
}
Run Code Online (Sandbox Code Playgroud) 这是我从远程服务器获取的JSON ....如何为此创建C#对象?
{
"payload":
{
"one":
{
"x": 1
},
"two":
{
"x": 2
},
"three":
{
"x": 3
}
}
}
Run Code Online (Sandbox Code Playgroud)
http://json2csharp.com/创建了三个类型"one","two"和"three"......但这些是动态值.我可能会在下一个请求中得到"四个","五个","六个"
我有一些JSON,我想反序列化为C#类的实例.但是,该类没有与原始JSON匹配的所有字段/属性.我希望能够修改类中的属性值,然后将其序列化为JSON,其余字段和原始JSON中的属性仍然完好无损.
例如,假设我有以下JSON:
{
"name": "david",
"age": 100,
"sex": "M",
"address": "far far away"
}
Run Code Online (Sandbox Code Playgroud)
我想将它反序列化为这个类:
class MyClass
{
public string name { get; set; }
public int age { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
反序列化后,我设置以下内容:
myClass.name = "John";
myClass.age = 200;
Run Code Online (Sandbox Code Playgroud)
现在,我想将它序列化为JSON并获得此结果:
{
"name": "John",
"age": 200,
"sex": "M",
"address": "far far away"
}
Run Code Online (Sandbox Code Playgroud)
有没有办法使用Json.Net做到这一点?
我从人口普查局的公共场所获得了一个不规则的JSON阵列.变量名都在第一个元素中,我无法反序列化它.
http://api.census.gov/data/2014/pep/agesex?get=AGE,POP,SEX&for=us:*&DATE=7
给我这样的JSON:
[["AGE","POP","SEX","DATE","us"],
["0","3948350","0","7","1"],
["1","3962123","0","7","1"],
["2","3957772","0","7","1"],
["3","4005190","0","7","1"],
["4","4003448","0","7","1"],
["5","4004858","0","7","1"],
["6","4134352","0","7","1"],
["7","4154000","0","7","1"]]
Run Code Online (Sandbox Code Playgroud)
我可以使用以下方法成功反序列化:
var test1 = JsonConvert.DeserializeObject<String[][]>(jsonStr);
Run Code Online (Sandbox Code Playgroud)
但是,我试图将它反序列化为这样的类:
public class TestClass
{
public string AGE { get; set; }
public string POP { get; set; }
public string SEX { get; set; }
public string DATE { get; set; }
public string us { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我正在尝试这样做:
var test2 = JsonConvert.DeserializeObject<TestClass[]>(jsonStr);
Run Code Online (Sandbox Code Playgroud)
但我得到以下异常:
Newtonsoft.Json.dll中出现"Newtonsoft.Json.JsonSerializationException"类型的异常,但未在用户代码中处理
附加信息:无法创建和填充列表类型TestClass.路径'[0]',第1行,第2位.
是否可以为类型为int的类的属性创建装饰器,以便将其序列化为字符串?
我有
public class MyClass
{
[SerializeAsString] //this is what I want
public int StreetCode { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
所以当我打电话
var jsonRequest = JsonConvert.SerializeObject(myClass);
Run Code Online (Sandbox Code Playgroud)
我希望它输出引号之间的值,而不是不带引号的int值。
我编写了以下代码来使用C#和NPOI库编辑Excel文件.没有错误,但是在我打开文件后运行代码后,不会编辑单元格的值.我究竟做错了什么?
namespace Project37
{
class Class1
{
public static void Main()
{
string pathSource = @"C:\Users\mvmurthy\Downloads\VOExportTemplate.xlsx";
FileStream fs = new FileStream(pathSource, FileMode.Open, FileAccess.ReadWrite);
HSSFWorkbook templateWorkbook = new HSSFWorkbook(fs, true);
HSSFSheet sheet = (HSSFSheet)templateWorkbook.GetSheet("ImportTemplate");
HSSFRow dataRow = (HSSFRow)sheet.GetRow(4);
dataRow.GetCell(1).SetCellValue("foo");
MemoryStream ms = new MemoryStream();
templateWorkbook.Write(ms);
}
}
}
Run Code Online (Sandbox Code Playgroud) 我正在从事 Xamarin 项目。基本上,我想从 API 接收数据并显示它。为此,我正在使用 RestSharp。
这是我的 API 请求代码。
string test;
test = "yAHO0SsAmjJi1qTZGcK3sMHHIhWTN4Yq";
string s = string.Format("http://192.168.1.4:3116/api/user/getuser/{0}", test);
client = new RestClient(s);
request = new RestRequest(Method.GET);
request.AddHeader("Cache-Control", "no-cache");
request.AddHeader("Content-Type", "application/json");
IRestResponse response2 = client.Execute(request);
Run Code Online (Sandbox Code Playgroud)
这是我收到的 JSON 对象。
{
"id": 1,
"token": "yAHO0SsAmjJi1qTZGcK3sMHHIhWTN4Yq",
"email": "some email",
"password": "testpassword",
"currentCompany": "some company",
"currentRole": "Software Developer",
"date": "Something",
"name": "Some name",
"lastName": "Some surname",
"headLine": "Some text",
"education": "University of Hotshots",
"country": "Who cares",
"imageLocation": "Some url"
}
Run Code Online (Sandbox Code Playgroud)
这是我使用网站为它创建的类:json2csharp.com/
class User
{ …Run Code Online (Sandbox Code Playgroud) 我在使用 C#(VS 2017,.Net 4.6)代码时遇到了一些麻烦。如果有人能帮忙就好了。我有一个 JSON 文件:
{
"makerCommission": 10,
"takerCommission": 10,
"buyerCommission": 0,
"updateTime": 1540015045989,
"balances": [
{
"asset": "BTC",
"free": "0.22222222",
"locked": "0.00000000"
},
{
"asset": "LTC",
"free": "2.00000000",
"locked": "3.00000000"
},
{
"asset": "ETH",
"free": "4.00000000",
"locked": "5.00000000"
}
]
}
Run Code Online (Sandbox Code Playgroud)
我想使用以下方法检索任何硬币的“免费”价值:
result = (dynamic)JArray.Parse(MyData)
Run Code Online (Sandbox Code Playgroud)
我不想检索所有免费值。如果我选择 BTC,我怎样才能得到 0.22222222?