Chúng tôi đang sử dụng thuộc tính khai báo mùa xuân giao dịch cho toàn vẹn cơ sở dữ liệu. Một số mã của chúng tôi gọi webservice mà làm bó của các chất liệu trong sharepoint. Vấn đề là khi các dịch vụ web mất nhiều thời gian hơn, người dùng sẽ bị bế tắc từ mùa xuân đang nắm giữ phần phụ trợ.Mùa xuân :: Nếu một ngã ba một chủ đề mới sẽ được thực thi trong giao dịch của mùa xuân
Nếu tôi tạo một chuỗi mới bên trong một hàm có thuộc tính khai báo giao dịch mùa xuân sẽ bị bỏ qua từ mùa xuân?
[Transaction(TransactionPropagation.Required, ReadOnly = false)]
public void UploadPDFManual(/*parameters*/)
{
//DO some data base related things
if (revisionPDFBytes != null)
{
//my sharepoint call which calls webservice
Task.Factory.StartNew(() => DocumentRepositoryUtil.CreateSharepointDocument(docInfo)); // I draw a new thread from ASPNET worker thread pool.
}
}
Bất kỳ tùy chọn nào khác tôi nên đi?
tôi thích ý tưởng tách những gì không nên có trong giao dịch –