小编BBo*_*org的帖子

ViewState作为属性

而不是..

    public string Text
    {

        get { return ViewState["Text"] as string; }

        set { ViewState["Text"] = value; }

    }
Run Code Online (Sandbox Code Playgroud)

我想要这个..

    [ViewState]
    public String Text { get; set; }
Run Code Online (Sandbox Code Playgroud)

可以吗?

asp.net

16
推荐指数
1
解决办法
2100
查看次数

单元测试扩展方法

我们的团队刚刚开始进行单元测试和模拟,我们在考虑扩展方法时遇到了一些讨论.问题是什么是测试类的好方法,它使用扩展方法.即我们有这样的Enum ..

public enum State
{
    [LangID(2817)]
    Draft = 0,
    [LangID(2832)]
    Booked = 1,
    [LangID(1957)]
    Overdue = 2,
    [LangID(2834)]
    Checked = 3,
}
Run Code Online (Sandbox Code Playgroud)

其中使用了扩展方法:

public static string GetDescription(this Enum _enum)
{
    Type type = _enum.GetType();
    MemberInfo[] memInfo = type.GetMember(_enum.ToString()); 
    if (memInfo != null && memInfo.Length > 0)
    {
        object[] attrs = memInfo[0].GetCustomAttributes(typeof(LangID), false);
        if (attrs != null && attrs.Length > 0)
            return LanguageDB.GetString(((LangID)attrs[0]).ID);
    }
    return _enum.ToString();
}
Run Code Online (Sandbox Code Playgroud)

这将再次由被测试的类调用,如此...

public class SUT(){

  public void MethodUnderTest(){
      string description = SomeObject.Status.GetDescription();//Status is Type …
Run Code Online (Sandbox Code Playgroud)

c# extension-methods unit-testing

4
推荐指数
2
解决办法
5252
查看次数

只是日期或时间

我是在想 ..

我有这样的对象

public class Entry{

public DateTime? Date { get; set;} // This is just Date

public DateTime? StartTime { get; set; } //This is just Time

public TimeSpan Duration { get; set; } //Time spent on entry

}
Run Code Online (Sandbox Code Playgroud)

是否有比DateTime更合适的类型或更好的策略来处理时间和日期?没有必须在我的所有开始和结束时间添加DateTime.MinDate()的痛苦?

---更新---

1 - 我希望能够在Entry对象上请求Date或StartTime是否为Null.

2 - 输入应允许用户输入持续时间而不指示日期.即使像DateTime.MinDate()这样的默认日期也似乎是一个糟糕的设计.(这就是为什么我选择TimeSpan而不是Start和EndTime)

c# time datetime date

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

标签 统计

c# ×2

asp.net ×1

date ×1

datetime ×1

extension-methods ×1

time ×1

unit-testing ×1