Вы должны обновить отдельные записи из каждой таблицы и затем выполнить db.SubmitChanges();
В вашем запросе вывод является анонимным типом, а не табличным типом, связанным с контекстом БД.
Если вы думаете с точки зрения SQL, linq2sql работает почти так же. Вы можете выбрать набор записей с объединением, но вы не можете обновлять непосредственно на этом. Вам нужно разбить его и изменить записи непосредственно в Products, ProductCategories и ProductSubCategories, что соответствует таблицам в вашей базе данных.
Если вы хотите изменить Продукт в Products
, вам нужно изменить свойства этого типа, а не анонимного типа (объединенный тип).