Как оператор в платформе объекта?

class Enum {
  constructor (...vals) {
    vals.forEach( val => {
      const CONSTANT = Symbol(val);
      Object.defineProperty(this, val.toUpperCase(), {
        get () {
          return CONSTANT;
        },
        set (val) {
          const enum_val = "CONSTANT";
          // generate TypeError associated with attempting to change the value of a constant
          enum_val = val;
        }
      });
    });
  }
}

Пример использования:

const COLORS = new Enum("red", "blue", "green");
83
задан brien 23 June 2009 в 15:18
поделиться

3 ответа

Это специально упоминается в документации как часть Entity SQL. Вы получаете сообщение об ошибке?

// LIKE and ESCAPE
// If an AdventureWorksEntities.Product contained a Name 
// with the value 'Down_Tube', the following query would find that 
// value.
Select value P.Name FROM AdventureWorksEntities.Product 
    as P where P.Name LIKE 'DownA_%' ESCAPE 'A'

// LIKE
Select value P.Name FROM AdventureWorksEntities.Product 
    as P where P.Name like 'BB%'

http://msdn.microsoft.com/en-us/library/bb399359.aspx

5
ответ дан 24 November 2019 в 08:41
поделиться

На самом деле я ничего не знаю об EF, но в LINQ to SQL предложение LIKE обычно выражается с помощью String.Contains:

where entity.Name.Contains("xyz")

переводится в

WHERE Name LIKE '%xyz%'

(используйте StartsWith и EndsWith для другого поведения.)

Я не совсем уверен, полезно ли это, потому что я не понимаю, что вы имеете в виду, когда говорите, что пытаетесь реализовать НРАВИТСЯ. Если я полностью неправильно понял, дайте мне знать, и я удалю этот ответ :)

148
ответ дан 24 November 2019 в 08:41
поделиться

re: "мы хотели бы иметь возможность сопоставления на blah blah foo bar foo? Bar? Foo * bar? И другие сложные шаблоны. " На самом деле я этого не пробовал (еще не нужно было), но пробовали ли вы использовать System.Text.RegularExpressions.RegEx?

0
ответ дан 24 November 2019 в 08:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: