This is my database schema.
Delivery(LRno(PK), Destination, date, TransporterID(FK), Weight, TruckNo)
Transporter(TransporterID(PK), TransporterName)
Now i have following controls in UI:
LRNo, Destination, Date, Weight, TransporterName.
I would like to insert TransporterID(FK) in Delivery table when user provide input as transporter name. User is supposed to select transporter name while TransporterID should be inserted in delivery table. No changes were made in Transporter table.
We are using linq to entities.I am new to EF and LINQ.
rDatabaseEntities context = new rDatabaseEntities();
Delivery del = new Delivery();
del.TruckNo = trucknotxt.Text;
del.LR_No = Convert.ToInt32(lrnotxt.Text);
var query = from t in context.Transporters where t.transporterName == transcombo.SelectedItem select t.TransporterID;
context.Deliveries.AddObject(query);
transcombo is combobox to select transporter name.
I am getting following two errors for last line (context.Deliveries.AddObject(query);)
1) The best overloaded method match for 'System.Data.Objects.ObjectSet<linqproj.Delivery>.AddObject(linqproj.Delivery)' has some invalid arguments
2) Argument 1: cannot convert from 'System.Linq.IQueryable<int>' to 'linqproj.Delivery
What to do next ?