public ExtraValue(FamilyExtra v, ExtraValueModel model) { Type = v.Type; Field = v.Field; StrValue = v.StrValue; DateValue = v.DateValue; Data = v.Data; IntValue = v.IntValue; BitValue = v.BitValue; Id = v.FamilyId; Model = model; }
internal static Field AddField(Field f, FamilyExtra v) { if (f == null) { f = new Field { name = v.Field, nonstandard = true, familyid = v.FamilyId, extravalue = v, }; f.type = v.StrValue.HasValue() ? "Code" : v.Data.HasValue() ? "Data" : v.DateValue.HasValue ? "Date" : v.IntValue.HasValue ? "Int" : v.BitValue.HasValue ? "Bit" : "Code"; } f.extravalue = v; return(f); }
public void ShouldMakePizzaOfSameType() { //Arrange List <string> extrasList = new List <string>() { "Cheese", "Family" }; string pizzaType = "Pepperoni"; IPizzaFactory pizzaFactory = new OrdinaryPizzaFactory(); //Act IPizza pizzaFromFactory = pizzaFactory.MakePizza(extrasList, pizzaType); //Assert IPizza pizza = new FamilyExtra(new CheeseExtra(new PepperoniPizza())); Assert.NotNull(pizzaFromFactory); Assert.Equal(pizza.Price(), pizzaFromFactory.Price()); Assert.Equal(pizza.Name(), pizzaFromFactory.Name()); Assert.Equal(pizza.Calories(), pizzaFromFactory.Calories()); }
public ActionResult NewExtraValue(int id, string field, string type, string value) { var v = new FamilyExtra { FamilyId = id, Field = field }; DbUtil.Db.FamilyExtras.InsertOnSubmit(v); switch (type) { case "string": v.StrValue = value; break; case "text": v.Data = value; break; case "date": var dt = DateTime.MinValue; DateTime.TryParse(value, out dt); v.DateValue = dt; break; case "int": v.IntValue = value.ToInt(); break; } try { DbUtil.Db.SubmitChanges(); } catch (Exception ex) { return(Content("error: " + ex.Message)); } return(Content("ok")); }