• Without the code and the deadlock graphs all I can do is make some vague suggestions.

    Make sure that the queries you're writing access the tables in question in the same order. Deadlocks are frequently caused when you access TableA then TableB in one query, but TableB then TableA in another. Make sure your queries are tuned. Deadlocks are fundamentally a performance issue. If your queries run fast enough, you'll never see a deadlock.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning