Tag: expression-trees
Ausdruck Bäume sind eine abstrakte Darstellung des Codes in einer Baumstruktur, wo jeder Knoten des Baumes stellt eine Programmier-Anweisung (bedingte, Zuweisung, Methodenaufruf, etc.)
3
Antworten
Hallo, ich versuche eine Funktion erstellen, die dynamisch erstellt einen Delegaten mit der gleichen Rückgabewert und die gleichen Parameter wie eine MethodInfo-es erhält als parameter und auch und dies ist sehr wichtig, den gleichen Parameternamen! Was ich
3
Antworten
In einem Projekt, an dem ich arbeite habe ich die Arbeit mit einem eher seltsamen Datenquelle. Ich kann es geben, eine "Abfrage" und es kehrt mir einer DataTable. Die Abfrage wird jedoch nicht um einen klassischen string.
1
Antworten
Habe ich Probleme, versuchen, den Wert eines Objekts aus dem Expression Tree ohne Verwendung .Compile() Das Objekt ist ganz einfach. var userModel = new UserModel { Email = "
[email protected]"}; Die Methode geben wird, mich zu Fragen, wie
1
Antworten
Ich bin die Entwicklung der parser für Ausdrücke wie diese: a1 + a2 + a3 > 0 and b <> "" or c = "source" Möchte ich Ausdruck Baum und sammeln Sie die Parameter (a1, a2..) beim
2
Antworten
Ich bin parsing-Ausdruck-Baum. Gegeben eine NodeType-der ExpressionType.MemberAccess, wie bekomme ich den Wert des Feldes? C# MSDN-Dokumentation: MemberAccess ist Ein Knoten für das Lesen aus einem Feld oder einer Eigenschaft. Einen code-snippet, das wäre unglaublich, unglaublich hilfreich. Vielen
4
Antworten
Hinweis: ich bin mir bewusst von den früheren Frage "Was ist der Zweck der LINQ-Ausdruck.Zitat-Methode?", aber wenn Sie weiterlesen, werden Sie sehen, dass es nicht meine Frage beantworten. Verstehe ich, was das erklärte Ziel der Expression.Quote() ist.
2
Antworten
Ich versuche zu schreiben ein ExpressionVisitor zu wickeln um meine LINQ-zu-Objekt-Ausdrücke automatisch in Ihre string-Vergleiche mit groß-und Kleinschreibung, so wie Sie in LINQ-to-entities. EDIT: ich möchte auf jeden Fall verwenden Sie eine ExpressionVisitor anstatt einfach anwenden einige
1
Antworten
Ich bin neu in Java und versuche zu hinzufügen evaluate-Methode in meine Klasse. Die ExpTree Klasse und das Programm testen ist mir gegeben. Ich schrieb mein code, wie ich gelernt, in der Klasse, aber nicht wissen, warum
7
Antworten
Für Eigenschaften gibt es GetGetMethod und GetSetMethod so dass ich tun kann: Getter = (Func<S, T>)Delegate.CreateDelegate(typeof(Func<S, T>), propertyInfo.GetGetMethod()); und Setter = (Action<S, T>)Delegate.CreateDelegate(typeof(Action<S, T>), propertyInfo.GetSetMethod()); Aber wie gehe ich über die FieldInfos? Ich bin nicht auf der
1
Antworten
Ich Baue eine SQL "WHERE" - Klausel, die dynamisch mit dem System.Linq -.Ausdrücke.Ausdruck-Klasse. Es funktioniert gut für einfache Klauseln, z.B. um "PhaseCode = X" - Klausel, ich Tue das folgende: var equalTarget = Expression.Constant(phaseCode, typeof(int?)); var phaseEquals
5
Antworten
Brauche ich zur Umsetzung ein Ausdruck für eine Methode wie hier: var prop = Expression.Property(someItem, "Name"); var value = Expression.Constant(someConstant); var contains = typeof(string).GetMethod("Contains", new {typeof(string)}); var expression = Expression.Call(prop, contains, value); Aber für meine extension Methode:
7
Antworten
Ist es möglich, zu konvertieren einen string-Ausdruck in einen booleschen Zustand? Zum Beispiel, bekomme ich die folgende Zeichenfolge: var b = "32 < 45 && 32 > 20" Ich würde gern ein bool Ausdruck aus diesem und
3
Antworten
Habe ich die folgende Klasse public class MyClass { public bool Delete(Product product) { //some code. } } Nun habe ich eine helper-Klasse, die wie folgt aussieht public class Helper<T, TResult> { public Type Type; public string
1
Antworten
Ich versuche zu erstellen, die einen lambda-Ausdruck für eine nested-Eigenschaft zur Laufzeit aus dem Namen der Eigenschaft. Grundsätzlich bin ich versucht zu erstellen, die den lambda-Ausdruck angegeben: var expression = CreateExpression<Foo, object>(foo => foo.myBar.name); private static Expression
7
Antworten
Ich bin der dummy in diesem Szenario. Ich habe versucht, auf Google Lesen, was diese sind, aber ich verstehe es einfach nicht. Kann mir jemand eine einfache Erklärung dafür, was Sie sind und warum Sie nützlich? edit:
5
Antworten
bitte betrachten Sie dieses Szenario: Ich habe eine Liste von einer Klasse mit über 50 Feldern.Ich möchte eine Combobox kann der Benutzer wählen, nach was-Feld Liste Sortieren.Zum Beispiel, wenn Benutzer wählen Sie "F1" Liste Sortieren nach "F1".
1
Antworten
Skiena Buch über Algorithmus enthält die folgende Frage: 1) Bewerten Ausdruck gegeben, als binären Baum in O(n) Zeit bei n Knoten. 2) Bewerten Ausdruck gegeben, wie DAG in O(n+m) Zeit bei n Knoten und m Kanten im
3
Antworten
Möchte ich eine Methode aufgerufen, die einen parameter erwartet wie dieser: Expression<Func<sometype, 'a>> expr Brauche ich zum erstellen dieser parameter zur Laufzeit, weil ich nicht weiß, was der anonym-Typ Aussehen wird, wie vorher; es hätte jede Menge
4
Antworten
Könnte mir jemand erklären, wie man einen binären Ausdruck Baum. Ich habe zum Beispiel einen string 2*(1+(2*1)); Wie zu konvertieren, das in einem binären Ausdruck Baum. * | \ | \ 2 + |\ 1 * |\
3
Antworten
Ich versuche zu bewerten, eine Liste das ist ein Ausdruck in der Präfix-notation. Hier ist ein Beispiel für eine solche Liste: [+, [sin, 3], [- 10 5]] Was ist der beste Weg zu bewerten, den Wert der
19
Antworten
Ich nicht haben derzeit dieses Problem, aber man weiß ja nie, und dachte, Experimente sind immer Spaß. Ignorieren der offensichtlichen Probleme, die Sie mit Ihrer Architektur sogar dem Versuch, diese, mal angenommen, Sie waren einige schrecklich geschriebenen
3
Antworten
Dies ist am besten zu erklären, mithilfe von code. Ich habe eine generische Klasse, die eine Methode hat, die eine Ganzzahl zurückgibt. Hier ist eine einfache version für die Zwecke zu erklären... public class Gen<T> { public
5
Antworten
Gegeben ein string: "Person.Adresse.Postleitzahl - " ich möchte in der Lage sein, um die get/set-dieses PLZ-Eigenschaft auf eine Instanz von Person. Wie kann ich dies tun? Meine Idee war split die Zeichenfolge "." und dann die Iteration
4
Antworten
Habe ich eine Methode, welche ein "Konto" - Objekt basierend auf dem action-Delegaten übergeben: public static void AlterAccount(string AccountID, Action<Account> AccountAction) { Account someAccount = accountRepository.GetAccount(AccountID); AccountAction.Invoke(someAccount); someAccount.Save(); } Dieser funktioniert wie vorgesehen... AlterAccount("Account1234", a => a.Enabled
2
Antworten
Können Sie Lambda-Ausdruck Objekte repräsentieren einen lambda-Ausdruck als Ausdruck. Wie erstellen Sie eine Lambda-Expression-Objekt repräsentiert eine generische Methode aufrufen, wenn Sie nur wissen, die Art, die Sie für die generische Methode-Signatur - bei runtime? Beispiel: Ich möchte
6
Antworten
Meine Anwendung funktioniert mit laden der dll ' s dynamisch basierend auf Einstellungen aus der Datenbank (Datei -, Klassen-und Methodennamen). Zu erleichtern, zu beschleunigen und reduzieren den Einsatz von Reflexion möchte ich einen cache.... Folgt der Idee,
3
Antworten
Gut, der folgende code ist selbsterklärend; ich möchte Sie kombinieren zwei Ausdrücke in eine mit And Betreiber. Die Letzte Zeile bewirkt, dass rune-Zeit der Fehler: Zusätzliche Informationen: variable 'y' vom Typ 'System.String' referenziert von scope ", aber
5
Antworten
Ist es möglich, die ha ve a switch in einem lambda-Ausdruck ? WENN nicht, warum ? Resharper zeigt es als Fehler an. InformationsquelleAutor der Frage Toto | 2009-09-16
2
Antworten
Gibt es eine Möglichkeit zum erstellen einer Instanz eines Objekts mit der Objekt-Initialisierung mit einem Ausdruck Baum? Ich meine, erstellen Sie einen Ausdruck-Baum zu bauen, lambda: //my class public class MyObject { public bool DisplayValue { get;
1
Antworten
Hinweis: ich weiß, es ist viel einfacher zu erstellen, diese mit dynamic linq, aber ich möchte lernen. Erstellen Sie einen lambda-Ausdruck, der "findet": Name=David UND Alter=10. class Person { public int Age { get; set; } public
4
Antworten
Ich versuche, die Verwendung von Lambda-Ausdrücken in ein Projekt anzeigen zu einem Dritten query-API. So, ich bin durch analysieren der Expression tree von der hand. Wenn ich pass in ein lambda-Ausdruck wie: p => p.Title == "title"
4
Antworten
Also ich habe ein delegate die Punkte um eine Funktion, die ich eigentlich gar nicht wissen sollte, wenn ich zuerst die delegate Objekt. Das Objekt wird festgelegt, um eine Funktion später. Ich auch dann wollen, machen Sie
2
Antworten
Ich bin Aufbau einer LINQ-Abfrage, die dynamisch mit diesem code. Es scheint zu funktionieren, aber wenn ich mehr als einen searchString in meiner Suche (also, wenn mehrere Ausdrücke Hinzugefügt werden, bekomme ich die folgende Fehlermeldung: Variable 'p'
4
Antworten
Habe ich verwendet C# - Ausdrücke vor, basierend auf lamdas, aber ich habe keine Erfahrung Komponieren Sie mit der hand. Gegeben eine Expression<Func<SomeType, bool>> originalPredicateich möchte erstellen Sie eine Expression<Func<OtherType, bool>> translatedPredicate. In diesem Fall SomeType und
7
Antworten
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); } Weil der Typ für die OrderBy-ist
9
Antworten
Ich verstehen, lambdas und die Func und Action Delegierten. Aber Ausdrücke stump mir. Unter welchen Umständen würden Sie eine Expression<Func<T>> eher als ein plain old Func<T>? InformationsquelleAutor der Frage Richard Nagle | 2009-04-27
3
Antworten
In C# 3.0 können Sie den Ausdruck verwenden, eine Klasse zu erstellen mit der folgenden syntax: var exp = Expression.New(typeof(MyClass)); var lambda = LambdaExpression.Lambda(exp); object myObj = lambda.Compile().DynamicInvoke(); Aber wie kann man Sie verwenden-Ausdruck zum erstellen einer
5
Antworten
IQueryable<Organization> query = context.Organizations; Func<Reservation, bool> predicate = r => !r.IsDeleted; query.Select(o => new { Reservations = o.Reservations.Where(predicate) }).ToList(); diese Abfrage wirft "Intern .NET Framework-Datenanbieter Fehler 1025" Ausnahme, sondern die folgende Abfrage nicht. query.Select(o => new {
8
Antworten
Ausdruck Bäume sind ein nettes feature, aber was sind die praktischen Anwendungen? Können Sie verwendet werden für eine Art von code-Generierung oder-metaprogramming oder so? InformationsquelleAutor der Frage Dmitri Nesteruk | 2008-12-31
7
Antworten
Gibt es eine Möglichkeit zu Deserialisieren-Ausdrücke in C#, ich möchte zum speichern von Ausdrücken in eine Datenbank und laden Sie zur Laufzeit. InformationsquelleAutor der Frage Alexandre Brisebois | 2008-10-20
6
Antworten
Frage ich mich, was genau ist der Unterschied zwischen der Verpackung eines Delegat in Expression<> und nicht ? Bin ich zu sehen Expression<Foo> viel mit LinQ, aber so weit ich habe nicht gefunden, einen Artikel, der erklärt
3
Antworten
Habe ich die folgende generische Erweiterungsmethode: 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
9
Antworten
Möchte ich generiert die folgende select-Anweisung dynamisch mithilfe von expression trees: var v = from c in Countries where c.City == "London" select new {c.Name, c.Population}; Bin, habe ich mir, wie zu generieren var v = from
2
Antworten
Ich versuche, erstellen Sie einen Ausdruck-Baum, stellt die folgende: myObject.childObjectCollection.Any(i => i.Name == "name"); Verkürzt aus Gründen der übersichtlichkeit habe ich den folgenden: //'myObject.childObjectCollection' is represented here by 'propertyExp' //'i => i.Name == "name"' is represented here
1
Antworten
C# in a Nutshell ist eine freie Klasse namens PredicateBuilder die LINQ-Konstrukte Prädikate Stück für Stück verfügbar hier. Hier ist ein Auszug von der Methode, die fügt einen neuen Ausdruck für das Prädikat. Könnte mir jemand das
3
Antworten
Möchte ich umschreiben, dass bestimmte Teile der LINQ-Ausdruck unmittelbar vor der Ausführung. Und ich habe Probleme bei der Injektion mein Brenner an der richtigen Stelle (an alle eigentlich). Blick auf das Entity Framework Quelle (Reflektor) am Ende
1
Antworten
Ich bin Aufbau einer LINQ-Ausdruck Baum, aber es wird nicht kompilieren, da angeblich die lokale variable $var1 ist out of scope: variable "vom Typ" System.Das Objekt " verwiesen wird, vom Anwendungsbereich ", aber es ist nicht definiert
2
Antworten
Ich versuche Anhängen, wo Prädikate und mein Ziel ist, erstellen Sie den gleichen Ausdruck wie: Services.Where(s => s.Name == "Modules" && s.Namespace == "Namespace"); Ich habe den folgenden code: Expression<Func<Service,string>> sel1 = s => s.Name; Expression<Func<Service,string>> sel2
1
Antworten
Ich kam gerade über das Konzept des Ausdrucks Bäume, die ich gehört habe, mehrere Male. Ich möchte nur verstehen, was gemeint ist, durch einen Ausdruck-Baum und seinen Zweck. Ich würde es lieben, wenn jemand könnte auch mir
3
Antworten
Erstellte ich eine Methode in C# zu bekommen methodname public string GetCorrectPropertyName<T>(Expression<Func<T, string>> expression) { return ((MemberExpression)expression.Body).Member.Name; //Failure Point } und nannte es als string lcl_name = false; public string Name { get { return lcl_name ;