相关疑难解决方法(0)

实体框架 - 使用数据注释的属性的默认值

我有这样的模特

public class MyModel
{
    public int MyModelId { get; set; }
    public string Name { get; set; }
    public string Description { get; set; }
    public string Title { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我想知道是否有一种方法,使用数据注释,设置属性的值 - 比如标题 - 默认为其他属性值,即名称.就像是:

if(MyModel.Title == "") MyModel.Title = MyModel.Name;
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-mvc entity-framework data-annotations

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

C#自动实现的属性

我对自动实现的属性相当新,并且我发现它们非常直接,但在Microsoft站点中它指出:

在C#3.0及更高版本中,当属性访问器中不需要其他逻辑时,自动实现的属性使属性声明更简洁.它们还使客户端代码能够创建对象.当您声明属性时,如以下示例所示,编译器将创建一个私有的匿名支持字段,该字段只能通过属性的get和set访问器进行访问.

- 自动实现的属性(MSDN)

任何人都可以解释以下语句对自动实现的属性的实际意义:" 它们还使客户端代码能够创建对象. "?

我无法弄清楚这意味着什么.

谢谢.

.net c#

9
推荐指数
1
解决办法
2418
查看次数

在C#中我可以通过属性帮助自动属性执行一些额外的工作吗?

这个问题是相关的,但不一样:你如何给C#Auto-Property一个默认值?

我喜欢自动属性,但有时我必须做这样的事情:

private string someName;

public string SomeName
{
    get
    {
       return someName;
    }

    set
    {
        someName = value.Trim();
    }
}
Run Code Online (Sandbox Code Playgroud)

如果我必须多次做同样的事情,我开始希望我不需要输入这么多行/代码的代码.我希望能够拦截值并改变它类似:

public string Somename
{
    get;

    [Trim]
    set;
}
Run Code Online (Sandbox Code Playgroud)

有没有办法做这样的事情?它会是愚蠢的吗?有没有更好的办法?还有其他一般评论吗?我承认,我给出的例子有点假设,我现在找不到确切的代码,这让我想到了这一点.

谢谢.

c# custom-attributes automatic-properties

8
推荐指数
2
解决办法
1192
查看次数

自动属性值和默认值

可能重复:
如何为C#Auto-Property提供默认值?

我有一个像这样的类的财产

public String fontWeight { get; set; }
Run Code Online (Sandbox Code Playgroud)

我希望它的默认值是 "Normal"

有没有办法以"自动"样式而不是以下方式执行此操作

public String fontWeight {
    get { return fontWeight; } 
    set { if (value!=null) { fontWeight = value; } else { fontWeight = "Normal"; } }
}
Run Code Online (Sandbox Code Playgroud)

c# default-value

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

C#自动属性 ​​- 设置默认值

为C#公共属性设置默认值的最简单/直接的方法是什么?

//如何为此设置默认值?

public string MyProperty { get; set; }
Run Code Online (Sandbox Code Playgroud)

请不要建议我使用私有属性并实现get/set公共属性.试图保持这种简洁,并且不想争论为什么那么好.谢谢.

.net c# automatic-properties default-constructor

6
推荐指数
2
解决办法
552
查看次数

设置自动实现属性的默认值

假设我有一个自动实现的属性

public int SheetNum { get; set; }
Run Code Online (Sandbox Code Playgroud)

无论如何都要将默认值设置SheetNum为1,所以它会是这样的

private int sheetNum = 1;

public int SheetNum
{
    set { this.sheetNum = value; }
    get { return this.sheetNum; }
}
Run Code Online (Sandbox Code Playgroud)

c# getter-setter

6
推荐指数
1
解决办法
1万
查看次数

在属性和构造函数中初始化列表?

我有一个List<>由属性暴露的对象.我通常在属性getter中初始化我的列表,如下所示:

public class Foo
{
    private List<bar> _barList;

    public List<bar>
    {
        get
        {
            if(_barList == null)
            {
                _barList = new List<Bar>()
            }

            return _barList;
        }

        set
        {
            _barList = value;
        }
    }

    public Foo()
    {
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,我的同事通常更喜欢在类构造函数中初始化列表,如下所示:

public class Foo
{
    public List<bar> BarList { get; set; }

    public Foo()
    {
        BarList = new List<Bar>();
    }
}
Run Code Online (Sandbox Code Playgroud)

这两种情况都BarList无法在初始化之前被访问.由于使用autoproperties,第二个似乎更整洁.第一个似乎是一个更好的选择,因为列表仅在首次使用时初始化.我还应该考虑其他因素吗?这是最好的做法吗?

c# constructor properties

6
推荐指数
2
解决办法
1986
查看次数

如果选择的值为null,如何使Linq选择返回值?

我有以下代码:

    [DisplayName("Created")]
    [DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}")]
    public DateTime? Created { get; set; }

    [DisplayName("Modified By")]
    public string ModifiedBy { get; set; }

    [DisplayName("Modified")]
    [DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}")]
    public DateTime? Modified { get; set; }

        from d in data
        select new Content.Grid
        {
            PartitionKey = d.PartitionKey,
            RowKey = d.RowKey,
            Order = d.Order,
            Title = d.Title,e
            Created = d.Created,
            CreatedBy = d.CreatedBy,
            Modified = d.Modified,
            ModifiedBy = d.ModifiedBy
        };
Run Code Online (Sandbox Code Playgroud)

还有一个可能性d.Created,d.CreatedBy,d.Modified并且d.ModifiedBy可以为null.

我怎样才能让这个如果他们是null,则选择回到n/aCreatedByModifiedBy …

c# linq

5
推荐指数
1
解决办法
4947
查看次数

为什么{get; set;}访问器没有初始值(VS 2010 C#)

这肯定已被多次询问,但我找不到....抱歉......

为什么不允许以下内容?

public string MyString ="initial value"{get; 私人集;}

(Visual C#Express 2010)

c# default properties

4
推荐指数
1
解决办法
4816
查看次数

C#3.0中使用Property {get,set}方法的用途是什么

可能重复:
C#自动属性

您好,
我最近从Java迁移到.net(c#)平台.在这里,我还没有遇到太多问题......无论如何我搞砸了

                   property{get, set}
方法.实际上我根本无法弄清楚这些(属性)的确切含义.初始化变量或字段或对象状态的相同工作可以使用方法完成.我们可以将字段声明为私有,并可以使用相同类的公共方法访问它们.

           一个简单的事情我不是程序员或员工,而是计算机科学的普通学生,旨在成为一名全职职业的程序员.

- 非常感谢你们所有人提前协助我.

财产{get,set}

c# methods get properties set

4
推荐指数
1
解决办法
4万
查看次数