小编ata*_*ata的帖子

使用 protobuf-net 时将空字符串反序列化为空字符串

我正在使用 protobuf-net 来序列化和反序列化我的消息。我的消息还包含可以为空的字符串。但是,当我在另一侧反序列化它们时,我得到空字符串 ("")。

根据谷歌文档,空字符串中字符串类型的默认值。这个问题的解决方案是什么?

这是我正在使用的代码:

Command message = new Command();
message.s_value = null;
using (MemoryStream stream = new MemoryStream())
{
     Serializer.Serialize<Command>(stream, message);                
     stream.Close();
}
Run Code Online (Sandbox Code Playgroud)

反序列化同一个流后,我得到 s_value = ""

protobuf-net

3
推荐指数
1
解决办法
4401
查看次数

标签文本未更新

我有一个带有状态栏的Windows窗体,显示当前的应用程序状态.我有一个名为AppState的类,它在状态栏中更新了Label,并在处置它时将状态更改回"Ready".

在代码中我执行的操作如下:

using (AppState state = new AppState("Processing..."))
{
     //Do some work that take some seconds
}
Run Code Online (Sandbox Code Playgroud)

但标签保持不变.我没有任何例外.标签文本已更新,但在UI上,它会一直显示以前的值.我在这里错过了什么吗?

santosc你是对的,这是我唯一做的事情.这是AppState代码

public class AppState : IDisposable
{
    static string Default = "Ready";

    public AppState(string status)
    {
        Form.StatusLabel.Text = status;
    }

    public void Dispose()
    {
        Form.StatusLabel.Text = Default;
    }
}
Run Code Online (Sandbox Code Playgroud)

c#

2
推荐指数
1
解决办法
9440
查看次数

DataReader.NextResult检索结果的顺序始终是相同的

我有一个SELECT查询,产生多个结果,没有任何ORDER BY子句.如果我多次执行此查询然后使用DataReader.NextResult()迭代结果,我是否可以保证以相同的顺序获得结果?

例如,如果我执行以下返回199行的查询:

SELECT * FROM products WHERE productid < 200
Run Code Online (Sandbox Code Playgroud)

我总能得到productid = 1的第一个结果,依此类推?

据我所知,它始终以相同的顺序返回结果,但我找不到任何有关此行为的文档.

======================================

根据我的研究:查看此博客Conor vs. SQL.我实际上想问一下,即使表中的数据保持不变(即没有更新或删除),查询结果是否也会改变.但似乎在大表的情况下,当SQL服务器员工并行时,顺序可以不同

ado.net datareader

0
推荐指数
1
解决办法
2383
查看次数

根据区域设置格式化日期,然后获取日期部分

我想实现的是一个日期转换格式yyyyMMdd,以本地格式,即yyyy/MM/dddd/MM/yyyy等.我不感兴趣的部分时间,我只是需要时间.

该函数将采用字符串日期并以区域设置格式返回字符串日期.

我现在拥有的是:

dateFormat = new SimpleDateFormat("yyyyMMdd", Locale.getDefault());
convertedDate = dateFormat.parse("20120521");
Run Code Online (Sandbox Code Playgroud)

我之后尝试的所有东西要么返回一个带有时间和GMT等的长字符串,要么是我传递给函数的相同字符串.

java date

0
推荐指数
1
解决办法
856
查看次数

标签 统计

ado.net ×1

c# ×1

datareader ×1

date ×1

java ×1

protobuf-net ×1