我有一个Cake表和一个成分表,一个蛋糕由许多成分组成,一个成分可以在许多蛋糕中,所以我创建了多个映射与连接表cake_ingredients
。此外,每种蛋糕使用不同量的每种成分。例如,在蛋糕风味A中,您可能需要1.25kg面粉,而在蛋糕风味B中则需要1.5kg。由于成分的数量不同,每种蛋糕中使用的每种成分的成本将不同。因此,我的连接表需要与有效负载一起使用,附加列是数量和成本。我已按照this tutorial成功创建了这种关系。
我可以通过修改上面教程中的以下代码块,将cake_id
和ingredient_id
成功添加到连接表中
private void UpdateInstructorCourses(string[] selectedCourses, Instructor instructorToUpdate)
{
if (selectedCourses == null)
{
instructorToUpdate.Courses = new List<Course>();
return;
}
var selectedCoursesHS = new HashSet<string>(selectedCourses);
var instructorCourses = new HashSet<int>
(instructorToUpdate.Courses.Select(c => c.CourseID));
foreach (var course in db.Courses)
{
if (selectedCoursesHS.Contains(course.CourseID.ToString()))
{
if (!instructorCourses.Contains(course.CourseID))
{
instructorToUpdate.Courses.Add(course);
}
}
else
{
if (instructorCourses.Contains(course.CourseID))
{
instructorToUpdate.Courses.Remove(course);
}
}
}
插入数量和成本会产生麻烦(这将被计算)。
我该如何解决这个问题?我想如果有人可以帮我插入数量,我将能够插入计算出的费用。