[英]cannot resolve symbol when adding minutes into date time in c#?
我有我无法解决的问题。 我正在尝试添加分钟和减去分钟。 基本上在那个 30 分钟的块范围内。 但是,在我下面的代码中,我试图获取我的键值并添加 30 分钟但由于某种原因AddMinutes
给出了一个错误:
无法解析符号 AddMinutes。
这是我的代码:
var results = JsonConvert.DeserializeObject<dynamic>(barCodeValue);
var gettingTheName = (string) results.Evaluation.Value;
TextHeader.text = gettingTheName;
var qrCodeString = $"https://**************.firebaseio.com/Evaluations/.json?orderBy=\"$key\"&startAt=\"{gettingTheName}\"&limitToFirst=1";
var matchingsLink = new WebClient().DownloadString(qrCodeString);
var objs = JObject.Parse(matchingsLink);
var someId = objs.First.First["Active"].ToString();
var data = objs[gettingTheName];
try
{
if (!((bool)data["Active"] == false && (bool)data["Completed"] &&
DateTime.Now < data["ScheduleStartTime"].AddMinutes(30) &&
DateTime.Now > data["ScheduleStartTime"].AddMinutes(-30)))
您正在对JToken
类型对象使用AddMinutes()
方法。 AddMinutes 仅适用于 DateTime。
DateTime.Parse("dateInStringFormat")
将字符串解析为 DateTime 格式..然后您可以向其中添加分钟。
DateTime.Now < DateTime.Parse(data["ScheduleStartTime"].ToString()).AddMinutes(30) &&
DateTime.Now > DateTime.Parse(data["ScheduleStartTime"].StoString()).AddMinutes(-30)))
这可能是因为data["ScheduleStartTime"]
不是DateTime
的实例,因为 JSON 没有内置的日期或时间表示。 最有可能的是data["ScheduleStartTime"]
是表示为字符串的ISO 8601日期,在这种情况下,您应该在将其与DateTime.Now
进行比较之前对其进行解析:
// ...
var scheduleStartTime = DateTime.Parse(data["ScheduleStartTime"].ToString());
if (!((bool)data["Active"] == false && (bool)data["Completed"] &&
DateTime.Now < scheduleStartTime.AddMinutes(30) &&
DateTime.Now > scheduleStartTime.AddMinutes(-30)))
// ...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.