小编pik*_*chu的帖子

如何从数据库中获取可为空的DateTime

我的SQL Server数据库包含可为空的DateTime值.如何在C#中的应用程序中将它们转换为可以为空的DateTime对象?

这是我认为它会是什么样子,但它没有:

DateTime? dt = (DateTime?) sqldatareader[0];
Run Code Online (Sandbox Code Playgroud)

c# sql-server datetime nullable sqldatareader

17
推荐指数
2
解决办法
2万
查看次数

混淆资源和GetManifestResourceNames()

我一直在学习C#和visual C#IDE中的资源.我现在很困惑.我已经阅读了StackOverflow上的一些页面,比如这个如何获取一个embebbed资源的路径和Microsoft的文档,但它让我很困惑.

我的第一个问题:什么是资源:它是.resources文件还是其中的文件,如图标.

第二:当我使用GetManifestResourceNames方法时:我是否获得.resources文件名或其中的文件名.当我在我的程序中使用它时,我只获取.resources文件,但是阅读像这样循环遍历所有资源的resx文件的主题,我得到的印象我应该得到的名称.resources文件中的文件.

是我,还是这个术语真的有点令人困惑?任何人都可以让它更清晰一点吗?谢谢你的帮助.

c# resources winforms

15
推荐指数
3
解决办法
2万
查看次数

C# - FileStream:既可以锁定文件,又可以在不截断文件的情况下读取文件并将其写入截断文件

我想我的标题不是那么清楚.

我会试着解释一下:

我可以使用FileStream编写和读取文件

FileStream fs = new FileStream("C:\\Users\\Public\\text.txt", FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None);

private void button1_Click(object sender, EventArgs e)
{
    fs.Seek(0,0);
    StreamReader sr = new StreamReader(fs);
    textbox.Text = sr.ReadToEnd();
}

private void button2_Click(object sender, EventArgs e)
{
    StreamWriter sw = new StreamWriter(fs);
    sw.Write(textbox.Text);
    sw.Flush();
}
Run Code Online (Sandbox Code Playgroud)

这种方式其他程序无法使用该文件,但我也无法删除内容.写入它只会添加字符串,它不会替换内容.

或者我可以在没有FileStream的情况下完成:

private void button1_Click(object sender, EventArgs e)
{
    StreamReader sr = new StreamReader("C:\\Users\\Public\\text.txt");
    textBox1.Text = sr.ReadToEnd();
    sr.Close();
}

private void button2_Click(object sender, EventArgs e)
{
    StreamWriter sw = new StreamWriter("C:\\Users\\Public\\text.txt", false);
    sw.Write(textBox1.Text);
    sw.Close();
}
Run Code Online (Sandbox Code Playgroud)

这样,文件的内容被替换,但它没有锁定文件.

但我想要两个.解决办法是什么?

c# filestream streamwriter streamreader

7
推荐指数
1
解决办法
2897
查看次数