Да, вы можете:
Foo foo=new Foo { FooId=fooId }; // create obj and set keys
context.Foos.Attach(foo);
foo.Name="test";
context.SubmitChanges();
В вашем Dbml установить UpdateCheck = "Никогда" для всех свойств.
Это создаст один оператор обновления без выбора.
Одно предостережение: если вы хотите установить Name в null, вам придется инициализировать объект foo другим значением, чтобы Linq мог обнаружить изменение:
Foo foo=new Foo { FooId=fooId, Name="###" };
...
foo.Name=null;
Если вы хотите проверитьотметку времени при обновлении вы также можете сделать это:
Foo foo=new Foo { FooId=fooId, Modified=... };
// Modified needs to be set to UpdateCheck="Always" in the dbml