10
голосов
6ответов
1219 просмотров

Is there a way to make readonly (not just private) automatic properties?

Automatic properties let me replace this code: private MyType myProperty; public MyType MyProperty { get { return myPropertyField; } } with this code: public MyType MyProperty { get; private set; } with a few changes here and there - but is there a way to replace this code: private rea...

0
голосов
1ответов
493 просмотров

Passing auto properties as ref

The C# compiler doesn't allow this. What's the reason for this? And what workaround I can use? Basically I need to swap some values around, but don't wanna have the same swapping code all over.

9
голосов
10ответов
5700 просмотров

C# Automatic Properties - Still null after +=?

This seems like a bug to me... I accept that automatic properties, defined as such: public decimal? Total { get; set; } Will be null when they are first accessed. They haven't been initialized, so of course they are null. But, even after setting their value through +=, this decimal? still r...

0
голосов
1ответов
177 просмотров

Multiline values in Subversions autoproperties possible?

Is it possible to create a property in the autoprops section of .subversion/config file which contains multiline values? So that it would look like: svn pg myprop will output 1st line of prop 2nd line of prop

53
голосов
11ответов
20556 просмотров

C# Automatic Properties

I'm a bit confused on the point of Automatic properties in C# e.g public string Forename{ get; set; } I get that you are saving code by not having to declare a private variable, but what's the point of a property when you are not using any get or set logic? Why not just use public string Fore...

10
голосов
4ответов
7169 просмотров

C# 3.0 :Automatic Properties - what would be the name of private variable created by compiler

I was checking the new features of .NET 3.5 and found that in C# 3.0, we can use public class Person { public string FirstName { get; set; } public string LastName { get; set; } } instead of private string name; public string Name { get { return name; } set { name = value; } }...

1
голосов
5ответов
3289 просмотров

How to return a new instance of an object in C# Automatic Properties

Is it possible, using C# Automatic Properties, to create a new instance of an object? in C# I love how I can do this: public string ShortProp {get; set;} is it possible to do this for objects like List that first need to be instantiated? ie: List<string> LongProp = new List<string...

358
голосов
11ответов
67814 просмотров

Public Fields versus Automatic Properties

We're often told we should protect encapsulation by making getter and setter methods (properties in C#) for class fields, instead of exposing the fields to the outside world. But there are many times when a field is just there to hold a value and doesn't require any computation to get or set. Fo...

2
голосов
4ответов
436 просмотров

Is the implementation of Auto Properties in the spec?

Can I rely on the fact that the underlying field to a property named Foo is called "k__BackingField" ?

2
голосов
6ответов
264 просмотров

Is this the correct syntax for auto properties?

I've been programming for so long its hard to keep up with language changes sometimes... Is it really ok to set properties like this after .net v2 public string LocaleName { get; set; } Not requiring an inner field? Seems like the compiler takes care of this lately?

7
голосов
4ответов
3869 просмотров

Как часто вы наблюдаете злоупотребление сокращенными геттерами / сеттерами C #?

В C # вы можете создавать геттеры / сеттеры более простым способом, чем в других языках: public int FooBar { get; set; } Это создает внутреннюю частную переменную, к которой вы не можете обращаться напрямую, с внешним свойством FooBar для прямого доступа. У меня вопрос: как часто вы на...

15
голосов
3ответов
7318 просмотров

Как мне написать частные автоматические свойства набора в VB 10?

в C #: public string Property { get; private set; } в VB? Проголосуйте или / и поделитесь своими идеями!

2
голосов
4ответов
271 просмотров

Как настроить автоматические свойства в C # 3.0

До C # 3.0 мы делали так: class SampleClass { private int field; public int Property { get { return this.field } set { this.field = value } } } Теперь делаем это: class SampleClass { public int Property { get; set; } } (Смотри, ма! полей нет!) Теперь, если я хочу настроить...

50
голосов
4ответов
60727 просмотров

C # автоматическая десериализация свойств JSON

Мне нужно десериализовать некоторый объект JavaScript, представленный в JSON, в соответствующий класс C #. Учитывая приятные особенности автоматических свойств, я бы предпочел иметь их в этих классах, а не просто иметь поля. К сожалению, механизм сериализации .NET (по крайней мере, по умолчанию)...

0
голосов
3ответов
281 просмотров

Как использовать .NET 3.0 в VS2005?

Я пытаюсь использовать автоматически реализованные свойства в VS2005. На моем компьютере загружена платформа .NET 3.0, но Visual Studio все еще компилируется с .NET 2.0. Как мне сказать ему использовать .NET 3.0?

1
голосов
4ответов
799 просмотров

Могу ли я создать автоматическое свойство (без закрытого члена) с кодом получения и установки?

В C # я могу сделать это: public int Foo { get; set; } Что приятно. Но как только я хочу что-либо сделать в геттере или сеттере, я должен изменить это на это: private int foo; public int Foo { get { return foo; } set { foo = value; DoSomething(); // all that ot...

5
голосов
9ответов
1930 просмотров

Как вы думаете, «автоматическая реализация интерфейса» будет полезна в .NET / C #?

Учтите это: public class interface Person : IPerson { int ID { get; protected set; } string FirstName { get; set; } string LastName { get; set; } string FullName { get { return FirstName + " " + LastName; } } } А это: public class StubPerson : IPerson { int ID { get { retur...

140
голосов
10ответов
72228 просмотров

Разница между свойством и полем в C # 3.0+

Я понимаю, что это похоже на дубликат В чем разница между полем и свойством в C #? , но у меня есть небольшая разница (с моей точки зрения): Как только я это узнаю Я не буду использовать свой класс с «методами, которые работают только со свойствами» и Я не буду использовать код проверк...

2
голосов
1ответов
787 просмотров

Есть ли надстройка Reflector или другой инструмент, который будет обрабатывать автоматические свойства?

Reflector показывает это для свойств авто: public string AddressLine1 { [CompilerGenerated] get { return this.<AddressLine1>k__BackingField; } [CompilerGenerated] set { this.<AddressLine1>k__BackingField = value; } } Есть ли надс...

2
голосов
3ответов
474 просмотров

Есть ли способ заставить Visual Studio 2008 прекратить форматирование моих автоматических свойств?

В Visual Studio 2008 в меню "Параметры"> "Текстовый редактор"> "C #> Форматирование" установлены следующие параметры. Автоматически форматировать заполненную выписку на; Автоматически форматировать заполненный блок} Это действительно полезно, когда я пишу метод или операто...

10
голосов
3ответов
8423 просмотров

Как лучше всего вызвать событие INotifyPropertyChanged PropertyChanged?

При реализации интерфейса INotifyPropertyChanged вы несете ответственность за вызов события PropertyChanged каждый раз, когда свойство обновляется в классе. Обычно это приводит к следующему коду: public class MyClass: INotifyPropertyChanged private bool myfield; public...

7
голосов
5ответов
2651 просмотров

Поддерживают ли автоматически реализуемые свойства атрибуты?

Мне сказали, что в C # атрибуты не разрешены для автоматически реализуемых свойств. Это правда? если да, то почему? РЕДАКТИРОВАТЬ: я получил эту информацию из популярной книги по LINQ и не мог поверить в это! РЕДАКТИРОВАТЬ: обратитесь к странице 34 LINQ Unleashed Пола Киммела, где он говорит:...

64
голосов
3ответов
15500 просмотров

Автоматические свойства и структуры не смешиваются?

Обойдя несколько небольших структур, отвечая на этот пост , я неожиданно обнаружил следующее: Следующая структура с использованием поля int совершенно допустима: struct MyStruct { public MyStruct ( int size ) { this.Size = size; // <-- Legal assignment. } p...

4
голосов
1ответов
481 просмотров

.NET - Ошибка при попытке скомпилировать автоматические свойства

Я пытаюсь скомпилировать POCO с помощью этого кода public class MenuItem { public string Name { get; set; } public string Url { get; set; } } Я продолжаю получать ошибки компиляции при получении и установке с такими сообщениями, как: «MenuItem.Name.get» должен объявлять т...

46
голосов
9ответов
40421 просмотров

Автоматические свойства C # - зачем мне писать «get; set;»?

Если и get, и set являются обязательными в автоматических свойствах C #, почему я должен указывать "get; set;" вообще?

4
голосов
5ответов
2408 просмотров

Почему для автоматических свойств требуются как геттеры, так и сеттеры?

В C #, если я объявляю автоматически реализуемое свойство, почему я должен объявлять ОБЕИЕ части получения и установки? т.е. public string ThisWorks { get; set; } public string ThisDoesnt { get; } Разве это не просто синтаксический сахар - то есть компилятор вставляет частное поле для...

53
голосов
2ответов
5563 просмотров

Почему необходимо вызывать: this () в структуре, чтобы использовать автоматические свойства в c #?

Если я определяю структуру на C #, используя автоматические свойства, подобные этому: public struct Address { public Address(string line1, string line2, string city, string state, string zip) { Line1 = line1; Line2 = line2; City = city; State = state; ...

3
голосов
2ответов
1016 просмотров

Как сбросить svn-свойства в соответствии с новой конфигурацией SVN?

Недавно я внес ряд изменений в свой локальный файл конфигурации svn. В основном я исправил свойства svn: mime-type около 15 различных типов файлов. Теперь мне нужно сбросить все ранее отмеченные файлы в соответствии с этой новой конфигурацией. SVN, кажется, запускает автоматическую поддержку тол...

3
голосов
5ответов
1364 просмотров

Утилита преобразования C # в VB.Net, которая правильно обрабатывает автоматические свойства?

Я надеюсь, что это не считается дубликатом, поскольку он более острый, чем аналогичные вопросы (мне любопытна конкретная слабость утилит преобразования C # в VB.net). Я искал такой инструмент, как этот .net-код Converter для преобразования библиотеки классов в VB, так как я единственный в м...

194
голосов
4ответов
163985 просмотров

Инициализация автоматических свойств C #

Я привык писать такие классы: public class foo { private string mBar = "bar"; public string Bar { get { return mBar; } set { mBar = value; } } //... other methods, no constructor ... } Преобразование Bar в автоматическое свойство кажется удобным и кратким, но как я могу со...