If I understood your question correctly and if you're talking about row level locking, it doesn't matter what your client is. If it's ASP.NET, a Windows Forms application or even SQL Server Management Studio, all these follow the same locking rules: When a row is modified, it's automatically locked and no one can make modifications to that row while the lock is in place.
So if that is your concern, you don't have to worry about it. But instead you should worry about the lock duration. If you're executing several SQL statements in a single unit of work you have to make sure that the locks are not released until the end of the unit of work. To accomplish this you need to use transactions.
In the beginning of the execution you start a transaction using
SqlConnection.BeginTransaction[
^]. Then you execute all the statements needed and in the end, if everything goes fine, you call
SqlTransaction.Commit[
^]. If something goes wrong you call
SqlTransaction.Rollback[
^]. This will ensure that no one can make modifications to the same rows that you're currently processing.
If you don't use transactions each SQL statement will be automatically committed (that is, if it succeeds) when the command ends. This may result to problematic situations since for example logical cross table integrity cannot be enforced anymore.