Семантика C# отличается немного от Java здесь. В присвоении C# в объявлении выполняется прежде, чем назвать конструктора суперкласса. В Java это сразу сделано, после которого позволяет 'этому' использоваться (особенно полезный для анонимных внутренних классов) и означает, что семантика двух форм действительно соответствует.
, Если Вы можете, сделайте полевой финал.
var caseNotesTree = from cn in context.tblCaseNotes
where cn.PersonID == personID
orderby cn.ContactDate
select new {
cn.CaseNoteID,
cn.ContactDate,
cn.ParentNote,
cn.IsCaseLog,
ContactDetailsClip = cn.ContactDetails.Substring(0, Math.Min(cn.ContactDetails.Length, 50))
};
Кроме того, я бы предложил обернуть ваше использование DataContext
s в с использованием
блоков.
cn.ContactDetails.Substring(0, 50);
В строке «выбрать новый». Это работает?