Basically you will lose query support, lazy loading, IntelliSense, etc. For example, you will not have such things if you remove the connection between Users and Questions
from u in context.Users where u.Questions.Count > 2 select u;
The LINQ point should provide you with all the constructs needed to implement the relational database model in C # code, allowing you to query this model. If you remove all associations / relationships, LINQ to SQL loses purpose.
Regarding Exception , you got:
If an association property is assigned a value that you cannot change the foreign key field, you must change the relationship by changing the association property. For example, using Customer and Order from the Northwind Sample Database. If the "Customer" property is assigned a value when ordering, you can no longer manually change the order of the CustomerID field, since it must correspond to the PK client. You can, however, change the Client property directly by assigning it a new client example. This action will automatically update the CustomerID field to match. Matt Warren (LINQ to SQL Architect)
This is what you need to do to solve your problem:
LINQ to SQL Error ForeignKeyReferenceAlreadyHasValueException
For LookUps and LINQ, do the following:
LINQ, Lookups, ForeignKeyReferenceAlreadyHasValueException
Use this code, for example, when linking a drop-down list:
With cboCategory .DataSource = From Category In db.Categories Order By Category.Name Select Category .DisplayMember = "Name" .ValueMember = "ID" don't set value member: http://tinyurl.com/d9etoy .DataBindings.Add(New Binding("SelectedItem", ItemBindingSource, "Category")) End With