c# - 变量中的 UWP/C# 日期存储
问题描述
现在,我对 C# 中 Date 的使用遇到了很多不同的反应,从使用:
DateTime.Parse
Date.Now
等等。在我看来,使用时间日期功能的方法有很多。我需要做的是从今天开始读取日、月和年(假设 Date.Now?)并单独存储这些值,以便可以在整个预算中引用它们。
我正在考虑这样做的方式是将 DateTimeStorage 类放在它自己的类文件夹中。这样,我可以在整个项目中的任何时候引用它,对吗?
我遇到的问题是我在类中立即收到以下两行错误:
class DateTimeStorage
{
String stringDate;
DateTime dateValue = DateTime.Parse(stringDate);
}
据此, stringDate 有错误
字段初始化程序不能引用非静态字段
现在,我将通过存储如下字符串值来关闭类:
class DateTimeStorage
{
String stringDate;
DateTime dateValue = DateTime.Parse(stringDate);
String day = datevalue.Day.ToString();
//etc
}
这也不起作用,“dateValue 在当前上下文中不存在”
现在,我完全被难住了,不知道如何最好地解决这个问题。我见过很多不同的约会方式。很难知道他们中的任何一个是否按照我需要的方式工作。
有人有什么建议吗?我需要将变量存储为字符串,因为它们将在整个项目中用于填充字段等。
任何帮助将不胜感激
解决方案
存储当前日期的静态类怎么样。您可以对此进行修改,以便能够从代码中的其他位置更新日期,但这是将日期初始化为Now
程序启动时的最简单方法。
using System;
namespace ClassLibrary3
{
public static class StaticDate
{
static StaticDate()
{
//Initialize Date
var date = DateTime.Now;
Year = date.Year;
Month = date.Month;
Day = date.Day;
}
public static readonly int Year;
public static readonly int Month;
public static readonly int Day;
}
public class SomeOtherClass
{
public void MethodThatNeedsDate()
{
var year = StaticDate.Year;
var day = StaticDate.Day;
}
}
}
推荐阅读
- php - "laravel Migration Foreign key constraint is incorrectly formed"
- android - nativescript - Activity restarts rather than resumes
- ios - 将长数转换为 UInt64 始终返回 nil
- java - How to unit test a kafka stream application that uses session window
- python - sqlcontext.sqlfield id 中的编码错误:IntegerType 不能接受类型中的对象 u'1'
- screen-readers - 屏幕阅读器读取列名数百次
- scala - 每次某列更改后获取一行
- lotus-notes - 是否有标记为软删除的文档的标志?
- user-interface - 从一组代码同时打开 2 个相同的窗口
- javascript - JS 弄乱了幻灯片的定位