コード例 #1
0
 public static void SetDataDescription(int userID, DateTime date, string desc)
 {
     CompareCondition<DateTime> cond = new CompareCondition<DateTime>(
         DataObject.Schema.Date, new ValueCondition<DateTime>(date), COMPARE_KIND.EQUAL);
     var user = ServerModel.DB.Load<TblUsers>(userID);
     var notesIds = ServerModel.DB.LookupIds<TblUserNotes>(user, cond);
     var notes = ServerModel.DB.Load<TblUserNotes>(notesIds);
     if (notes.Count == 0)
     {
         TblUserNotes note = new TblUserNotes()
                                 {
                                     Date = date,
                                     Description = desc,
                                     SysState = 0,
                                     UserRef = userID                                     
                                 }
         ;
         ServerModel.DB.Insert(note);
     }
     else
     {
         TblUserNotes note = notes[0];
         note.Description = desc;
         ServerModel.DB.Update(note);
     }
 }
コード例 #2
0
ファイル: Search.aspx.cs プロジェクト: supermuk/iudico
        protected void Search_Click(object sender, EventArgs e)
        {
            IDBCondition c1 = null;
            IDBCondition c2 = null;
            if (TitleFilter.Text.IsNotNull())
            {
                c1 = new CompareCondition(
                    new PropertyCondition("Title"),
                    new ValueCondition("%" + TitleFilter.Text + "%"),
                    COMPARE_KIND.LIKE);
            }
            if (ContentFilter.Text.IsNotNull())
            {
                c2 = new CompareCondition(
                    new PropertyCondition("Contents"),
                    new ValueCondition("%" + ContentFilter.Text + "%"),
                    COMPARE_KIND.LIKE);
            }
            if (c1 == null && c2 != null)
            {
                c1 = c2;
                c2 = null;
            }
            IDBCondition sc = c2 != null ? new AndCondtion(c1, c2) : c1;

            var news = ServerModel.DB.Query<TblNews>(sc);
            NewsSearchGrid.DataSource = news;
            NewsSearchGrid.DataBind();
            NewsSearchGrid.Visible = true;
        }
コード例 #3
0
ファイル: Compare.cs プロジェクト: carriercomm/Proton-1
		public Compare(LIRMethod parent, ISource sourceA, ISource sourceB, IDestination destination, LIRType type, CompareCondition condition) : base(parent, LIROpCode.Compare)
		{
			this.SourceA = sourceA;
			this.SourceB = sourceB;
			this.Destination = destination;
			this.Type = type;
			this.Condition = condition;
		}
コード例 #4
0
ファイル: SearchCriteria.cs プロジェクト: aelveborn/njupiter
		public SearchCriteria(string propertyName, string propertyValue, string domain, IContext context, CompareCondition condition, bool required) {
			if(propertyName == null) {
				throw new ArgumentNullException("propertyName");
			}
			var stringProperty = new Property<string>(propertyName, context, CultureInfo.InvariantCulture);
			stringProperty.Value = propertyValue;
			InitCriteria(stringProperty, domain, condition, required);
		}
コード例 #5
0
        public StringCondition(StringQueryField Field, CompareCondition Condition, string Value)
        {            
            if (string.IsNullOrWhiteSpace(Value))
            {
                queryPart = "";
                return;
            }
            Value = Value.Replace("'", "''");

            queryPart = $"{Field.GetQueryPart()} {Condition.GetSign()} '{Value}'";
        }
コード例 #6
0
ファイル: Compare.cs プロジェクト: carriercomm/Proton-1
		private static string GetConditionSymbol(CompareCondition c)
		{
			switch (c)
			{
				case CompareCondition.Equal: return "==";
				case CompareCondition.NotEqual: return "!=";
				case CompareCondition.GreaterThan: return ">";
				case CompareCondition.GreaterThanOrEqual: return ">=";
				case CompareCondition.LessThan: return "<";
				case CompareCondition.LessThanOrEqual: return "<=";
				default: throw new Exception("Unknown CompareCondition!");
			}
		}
コード例 #7
0
 public static string GetDateDescription(int userID, DateTime date)
 {
     string res = string.Empty; 
     CompareCondition<DateTime> cond =  new CompareCondition<DateTime>(
                    DataObject.Schema.Date, new ValueCondition<DateTime>(date), COMPARE_KIND.EQUAL);
     var user = ServerModel.DB.Load<TblUsers>(userID);
     var notesIds = ServerModel.DB.LookupIds<TblUserNotes>(user, cond);
     var notes = ServerModel.DB.Load<TblUserNotes>(notesIds);
     foreach (TblUserNotes i in notes)
     {
         res += i.Description + "\n";
     }
     return res;
 }
コード例 #8
0
ファイル: SearchCriteria.cs プロジェクト: aelveborn/njupiter
		public SearchCriteria(IProperty property, CompareCondition condition) : this(property, condition, false) { }
コード例 #9
0
 public PropertyComparison(PropertyReference property, CompareCondition compareCondition)
 {
     if (property == null) throw new ArgumentNullException("property");
     _property = property;
     _compareCondition = compareCondition;
 }
コード例 #10
0
ファイル: SearchCriteria.cs プロジェクト: aelveborn/njupiter
		private void InitCriteria(IProperty p, string d, CompareCondition c, bool r) {
			SetPropertyValueAndCondition(p, c);
			domain = d;
			required = r;
		}
コード例 #11
0
ファイル: SearchCriteria.cs プロジェクト: aelveborn/njupiter
		public SearchCriteria(string propertyName, string propertyValue, IContext context, CompareCondition condition) : this(propertyName, propertyValue, null, context, condition, false) { }
コード例 #12
0
ファイル: SearchCriteria.cs プロジェクト: aelveborn/njupiter
		public SearchCriteria(string propertyName, string propertyValue, CompareCondition condition, bool required) : this(propertyName, propertyValue, null, null, condition, required) { }
コード例 #13
0
ファイル: SearchCriteria.cs プロジェクト: aelveborn/njupiter
		public SearchCriteria(string propertyName, string propertyValue, string domain, CompareCondition condition) : this(propertyName, propertyValue, domain, null, condition, false) { }
コード例 #14
0
ファイル: SearchCriteria.cs プロジェクト: aelveborn/njupiter
		public SearchCriteria(IProperty property, CompareCondition condition, bool required) {
			InitCriteria(property, null, condition, required);
		}
コード例 #15
0
ファイル: SearchCriteria.cs プロジェクト: aelveborn/njupiter
		public SearchCriteria(IProperty property, string domain, CompareCondition condition, bool required) {
			InitCriteria(property, domain, condition, required);
		}
コード例 #16
0
ファイル: SearchCriteria.cs プロジェクト: aelveborn/njupiter
		public SearchCriteria(IProperty property, string domain, CompareCondition condition) : this(property, domain, condition, false) { }
コード例 #17
0
ファイル: SearchCriteria.cs プロジェクト: aelveborn/njupiter
		private static void CheckPropertyCompareCondition(IProperty property, CompareCondition condition) {
			switch(condition) {
				case CompareCondition.GreaterThan:
				case CompareCondition.GreaterThanOrEqual:
				case CompareCondition.LessThan:
				case CompareCondition.LessThanOrEqual:
				if(!typeof(IComparable).IsAssignableFrom(property.Type)) {
					throw new InvalidOperationException("Can not use inequality comparison on a property whose underlying type is not comparable.");
				}
				break;
				case CompareCondition.ContainsStartsWith:
				case CompareCondition.Contains:
				case CompareCondition.NotContains:
				case CompareCondition.EndsWith:
				case CompareCondition.NotEndsWith:
				case CompareCondition.StartsWith:
				case CompareCondition.NotStartsWith:
				if(property.Type != typeof(string)) {
					throw new InvalidOperationException("Can not use string comparisons on a property whose underlying type is not a string.");
				}
				break;
			}
		}
コード例 #18
0
ファイル: SearchCriteria.cs プロジェクト: aelveborn/njupiter
		private void SetPropertyValueAndCondition(IProperty p, CompareCondition c) {
			CheckPropertyCompareCondition(p, c);
			property = p;
			condition = c;
		}