O uso do LINQ to SQL ajudará a evitar a injeção de SQL

Estou configurando um site público e a primeira coisa que penso é a injeção de SQL. Eu tenho alguns campos de texto que estou salvando e estou usando o linq para atualizar / gravar no banco de dados. Estou seguro usando o linq?

Este exemplo está criando a conta do usuário.

Data.MemberRegistrationDataContext context = new MemberRegistrationDataContext();
Data.tbl_Member_UserProfile profile = new tbl_Member_UserProfile();
profile.SSN = Convert.ToDecimal(Session["tempMemberSSN_Registration"]);
profile.UserName = userName;
profile.Password = password;
profile.EmailAddress = email;
profile.QuestionID = qID;
profile.QuestionResponse = securityAnswer;
profile.LastModDt = DateTime.Now;
profile.LastModBy = "web";
context.tbl_Member_UserProfiles.InsertOnSubmit(profile);
context.SubmitChanges();

Este exemplo está mudando a senha

   MemberRegistrationDataContext dc = new MemberRegistrationDataContext();
   var mProfileRecord = dc.tbl_Member_UserProfiles.Single(c => c.SSN == sSSN);
   mProfileRecord.Password = sNewPassword;
   dc.SubmitChanges();

Estes são seguros? O LINQ parametriza o SQL que ele gera automaticamente?

questionAnswers(3)

yourAnswerToTheQuestion