防止 visual studio 将 setter 方法限制为内部
Prevent visual studio from limiting the setter method to internal
好吧,我使用 visual studio 2015 CE,更新 2。
我通常做的一种提高效率的技巧是创建空模型 类,例如:
public class PersonModel
{
}
然后在 select 表达式中使用它们,例如:
db.People.Where(p => someCondition)
.Select(p => new PersonModel
{
Id = p.Id,
Name = p.Name,
//set other properties
}).ToList();
然后我转到还不存在的属性 Id
和 Name
, ... 然后按 Control+.
询问 visual studio 到 generate property Id
为了我。
一切都很好,但它会创造:
public int Id { get; internal set; }
如果我在 asp.net webapi 模型绑定中使用相同的方法,绑定将无提示失败并给我 Id = 0
.
所以我的问题是:是否有任何选项要求 VS 创建 public setter,即:
public int Id { get; set; }
您可以通过输入 prop
并按两次 TAB
来完成。它会要求您输入 属性 的类型和名称,但不会从现有的中提取它。
此致。
So my question is: is there any option to ask VS to create public setter, i.e.:
不,无法修改快捷方式以自动添加带有 public 集的 属性。
尽管您的生产力技巧很巧妙,但您最好的选择是自己创建它。
在 Visual Studio 2017 年仍然如此,我使用相同的 "productivity hack"。
我最近得到了 Resharper,它确实使用了我们期望的 public setter。
好吧,我使用 visual studio 2015 CE,更新 2。 我通常做的一种提高效率的技巧是创建空模型 类,例如:
public class PersonModel
{
}
然后在 select 表达式中使用它们,例如:
db.People.Where(p => someCondition)
.Select(p => new PersonModel
{
Id = p.Id,
Name = p.Name,
//set other properties
}).ToList();
然后我转到还不存在的属性 Id
和 Name
, ... 然后按 Control+.
询问 visual studio 到 generate property Id
为了我。
一切都很好,但它会创造:
public int Id { get; internal set; }
如果我在 asp.net webapi 模型绑定中使用相同的方法,绑定将无提示失败并给我 Id = 0
.
所以我的问题是:是否有任何选项要求 VS 创建 public setter,即:
public int Id { get; set; }
您可以通过输入 prop
并按两次 TAB
来完成。它会要求您输入 属性 的类型和名称,但不会从现有的中提取它。
此致。
So my question is: is there any option to ask VS to create public setter, i.e.:
不,无法修改快捷方式以自动添加带有 public 集的 属性。 尽管您的生产力技巧很巧妙,但您最好的选择是自己创建它。
在 Visual Studio 2017 年仍然如此,我使用相同的 "productivity hack"。
我最近得到了 Resharper,它确实使用了我们期望的 public setter。