Pull to refresh
3
0
Александр Ревков @Revkov

User

Send message
Ну это вы сейчас уже предложили. Изначально в статье этого не было. А то сложиться впечатление, что я делаю выводы, не читая статьи.
Может быть это и избавляет от спама, но добавляет дополнительных проблем пользователю, а они ой как не любят, когда их ограничивают.
Кто мешает компании замаскироваться все так же под обычного человека? Как быть, если девушка, которая, допустим, тайно влюблена в парня, но не находиться у него в белом списке (ибо он ее не знает), захочет признаться об этом в смс? У нее ничего не получиться?
Осталась та же проблема, как отличить обычного пользователя от компании, если компания может делать рассылку все так же с обычного номера, не указывая, что она компания? Что если кому-то будет необходимо написать вам смс (не спам) не из белого списка?
А я говорил, что не надо шутить с блондинками.
Скандалы, интриги, расследования.
Я, заметим, не спорю, что отдельная viewmodel — это правильно. Только, в отличие от вашего поста, я могу четко показать зачем она нужна (и более того, как ее введение убирает разом все мои вопросы к вашему коду представления).

1. Если работать напрямую с контекстом будет постоянное соединение с базой данных.
2. Модель будет зависеть от конкретной реализации БД.
3. Модель уже сформирована и храниться в оперативной памяти, что ускоряет работу с данными.
4. Изменяя модель вы будете, автоматически изменять базу данных, что не есть хорошо. (Утрированно конечно, для сохранения изменений нужно вызвать SaveChanges(), но мало ли, что)
Если что-то упустил и вы знаете больше, поправьте или добавьте. Интересны знания других разработчиков.
Вообще, конечно, статья ни о чем. Нигде не объясняется, зачем (например, зачем новости имеют древовидную структуру) или почему (например, почему для отображения нужна отдельная модель) что-то делается.

Тут суть не в новостях, а в работе с древовидным списком. Класс News, можно назвать по-разному, например та же запись (Record). Для отображения нужна отдельная модель, чтобы напрямую не работать с базой данных, потому что это может повлечь за собой различные проблемы. Например, нарушение целостности и потерю информации.

Ну и код, конечно, ужасающий.

.Where©.Any(), когда можно сказать просто Any©?
foreach() {if}, когда можно сказать Where()?
Логика в view (в том числе — логика отбора данных)?
Partial вместо helper?

Ваш пример тоже имеет место быть.

Information

Rating
Does not participate
Location
Тула, Тульская обл., Россия
Date of birth
Registered
Activity