我一直收到同样的错误:'VlaamseOverheidMeterEntities.ObjectMeter'中的实体参与'FK_ObjectMeter_Meter'关系。找到了0个相关的“Meter”。预计1'米'。
我有以下表结构:
Meter 1< - * ObjectMeter * - > 1个VO_Object
始终是相同的情况:第一个仪表被添加到数据库,第二个仪表给出上面的错误。
我的经理中有以下代码:
public List<string> addTemporary(string username, string meterNaam, string readingType, string parentID) {
Meter meter = new Meter();
VO_Object voObject = objectManager.getObjectByID(parentID);
ObjectMeter objMeter = new ObjectMeter();
meter.readingType = (int)Enum.Parse(typeof(ReadingType), readingType);
meter.isActive = true;
meter.name = meterNaam;
meter.startDate = DateTime.Now;
meter.endDate = DateTime.Now.AddYears(6000);
meter.uniqueIdentifier = "N/A";
meter.meterType = (int)Enum.Parse(typeof(MeterType), "NA");
meter.meterCategory = (int)Enum.Parse(typeof(MeterCategory), "NA");
meter.energyType = (int)Enum.Parse(typeof(EnergyType), "NA");
meter.utilityType = (int)Enum.Parse(typeof(UtilityType), "NA");
meter.unitOfMeasure = (int)Enum.Parse(typeof(UnitOfMeasure), "NA");
objMeter.valid_from = meter.startDate;
objMeter.valid_until = meter.endDate;
objMeter.Meter = meter;
objMeter.VO_Object = voObject;
createMeter(meter);
List<String> str = new List<string>();
str.Add("" + meter.meterID);
str.Add(meter.name);
return str;
}
这在我的Dao Class中链接到数据库:
internal void CreateMeter(Meter _meter) {
_entities.AddToMeter(_meter);
_entities.SaveChanges();
}
有人可以解释一下这个错误吗?
罗纳德
答案 0 :(得分:0)
如果我理解你的代码:VO_Object是ObjectMeter的父代,它是Meter的父代。 VO_Object已存在于数据库中。您应该在创建Meter之前创建(保存)ObjectMeter。