«expression-trees» etiketlenmiş sorular


21
Lambda ifadesinden Özellik adı alınıyor
Lambda ifadesiyle iletildiğinde Mülk adını almanın daha iyi bir yolu var mı? İşte şu anda sahip olduğum şey. Örneğin. GetSortingInfo<User>(u => u.UserId); Sadece özellik bir dize olduğunda bir memberexpression olarak döküm yaparak çalıştı. çünkü tüm özellikler ben nesneyi kullanmak zorunda dizeleri değil ama o zaman onlar için bir unaryexpression dönecekti. …

1
Roslyn SyntaxNodes yeniden kullanılıyor mu?
Roslyn CTP'ye bir göz atıyorum ve İfade ağacı API'sine benzer bir sorunu çözerken her ikisi de değişmez, ancak Roslyn bunu oldukça farklı bir şekilde yapıyor: Expressiondüğümlerin ana düğüme referansı yoktur, a kullanılarak değiştirilir ExpressionVisitorve bu nedenle büyük parçalar yeniden kullanılabilir. Roslyn'in SyntaxNodediğer tarafta ebeveynine bir referansı vardır, bu nedenle tüm …

5
Expression.Quote (), Expression.Constant () şimdiden ne yapamaz?
Not: " LINQ'nun Expression.Quote yönteminin amacı nedir? " Sorusunun farkındayım. ” , Ancak okumaya devam ederseniz soruma cevap vermediğini göreceksiniz. Belirtilen amacın ne olduğunu anlıyorum Expression.Quote(). Bununla birlikte, Expression.Constant()aynı amaç için kullanılabilir ( Expression.Constant()halihazırda kullanılan tüm amaçlara ek olarak ). Bu nedenle, neden Expression.Quote()gerekli olduğunu anlamıyorum . Bunu göstermek için, …

4
LINQ to Entities, yalnızca IEntity arabirimiyle EDM ilkel veya numaralandırma türlerinin dökümünü destekler
Aşağıdaki genel uzantı yöntemine sahibim: public static T GetById<T>(this IQueryable<T> collection, Guid id) where T : IEntity { Expression<Func<T, bool>> predicate = e => e.Id == id; T entity; // Allow reporting more descriptive error messages. try { entity = collection.SingleOrDefault(predicate); } catch (Exception ex) { throw new InvalidOperationException(string.Format( "There …


4
Derlenmiş C # Lambda İfadeleri Performansı
Bir koleksiyon üzerinde aşağıdaki basit manipülasyonu düşünün: static List<int> x = new List<int>() { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; var result = x.Where(i => i % 2 == 0).Where(i => i > 5); Şimdi İfadeleri kullanalım. Aşağıdaki kod kabaca eşdeğerdir: static void UsingLambda() { …

8
Genel bir uzantı yöntemi içinde bir dize sütun adı kullanarak bir IQueryable'da OrderBy'yi nasıl uygularım?
public static IQueryable<TResult> ApplySortFilter<T, TResult>(this IQueryable<T> query, string columnName) where T : EntityObject { var param = Expression.Parameter(typeof(T), "o"); var body = Expression.PropertyOrField(param,columnName); var sortExpression = Expression.Lambda(body, param); return query.OrderBy(sortExpression); } OrderBy'nin türü sortExpression'dan çıkarılmadığından, bunu çalışma zamanında şuna benzer bir şey belirtmem gerekiyor: var sortExpression = Expression.Lambda<T, TSortColumn>(body, param); …

7
Aptallar için ifade ağaçları? [kapalı]
Kapalı . Bu soruya daha çok odaklanılması gerekiyor . Şu anda cevapları kabul etmiyor. Bu soruyu geliştirmek mi istiyorsunuz? Soruyu yalnızca bu gönderiyi düzenleyerek tek bir soruna odaklanacak şekilde güncelleyin . 7 yıl önce kapalı . Bu soruyu geliştirin Bu senaryodaki aptal benim. Google'da bunların ne olduğunu okumaya çalıştım ama …
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.