Exemple #1
0
        //public void Add(string geo1Name, string geo2Name, string geo3Name)
        //{
        //    //Geo1
        //    if (string.IsNullOrEmpty(geo1Name)
        //        || string.IsNullOrEmpty(geo1Name.Trim())) return;
        //    Geo geo1 = Get(geo1Name, 1, null);
        //    if (geo1 == null)
        //        geo1 = Add(geo1Name, 1, null);
        //    //Geo2
        //    if (string.IsNullOrEmpty(geo2Name)
        //        || string.IsNullOrEmpty(geo2Name.Trim())) return;
        //    Geo geo2 = Get(geo2Name, 2, geo1ID);
        //    Guid? geo2ID = geo2 != null ? geo2.ID : Insert(geo2Name, 2, geo1ID);
        //    //Geo3
        //    if (string.IsNullOrEmpty(geo3Name)
        //        || string.IsNullOrEmpty(geo3Name.Trim())) return;
        //    Geo geo3 = Get(geo3Name, 3, geo2ID);
        //    Guid? geo3ID = geo3 != null ? geo3.ID : Insert(geo3Name, 3, geo2ID);
        //}
        // Persistence
        public static void SetFullname(Geo e)
        {
            if (e.Level == 1)
            {
                e.FullName = e.Name;
            }

            if (e.Level == 2)
            {
                e.FullName = e.Name + ", " + e.Parent.Name;
            }

            if (e.Level == 3)
            {
                e.FullName = e.Name + ", " + e.Parent.Name + ", " + e.Parent.Parent.Name;
            }
        }
Exemple #2
0
 /// <summary>
 /// Create a new Geo object.
 /// </summary>
 /// <param name="id">Initial value of the ID property.</param>
 public static Geo CreateGeo(global::System.Guid id)
 {
     Geo geo = new Geo();
     geo.ID = id;
     return geo;
 }
Exemple #3
0
 /// <summary>
 /// Deprecated Method for adding a new object to the Geos EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
 /// </summary>
 public void AddToGeos(Geo geo)
 {
     base.AddObject("Geos", geo);
 }
Exemple #4
0
        // Add/Delete
        //public Geo Add(string name, int level, Guid? parentID)
        //{
        //    Geo geo = new Geo();
        //    geo.Name = name.Trim();
        //    geo.Level = level;
        //    geo.ParentID = parentID;
        //    DB.Geos.AddObject(geo);
        //    return geo;
        //}
        public Geo Add(Action<Geo> updateMethod)
        {
            Geo e = new Geo();

            e.ID = Guid.NewGuid();
            updateMethod(e);

            DB.Geos.AddObject(e);

            e.Level = e.Parent == null ? 1 : e.Parent.Level + 1;

            UpdateFullnameRecursive(e);

            Save();

            return e;
        }
Exemple #5
0
        public void UpdateFullnameRecursive(Geo e)
        {
            SetFullname(e);
            e.FullNameNoDiacritics = e.FullName.RemoveDiacritics();

            foreach (var item in e.Children)
            {
                UpdateFullnameRecursive(item);
            }
        }
Exemple #6
0
 public string GetFullname(Geo geo1, Geo geo2, Geo geo3)
 {
     return geo3 != null ? geo3.FullName : geo2 != null ? geo2.FullName : geo1 != null ? geo1.FullName : "";
 }
Exemple #7
0
 public void Delete(Geo e)
 {
     DB.Geos.DeleteObject(e);
 }