PDA

View Full Version : مشکل در شی گرایی و transaction



mojtabadj
یک شنبه 16 اسفند 1388, 17:47 عصر
سلام دوستان

من برناممو به صورت شی گرایی نوشتم و کلاسهایی مختلفی در برنامم دارم

در هر کلاس متد مربوط به کار با بانک اطلاعاتی وجود دارد

مشکلم جایی هست زمانی که بخواهم با فشار یک دکمه چند عملیات مربوط به کلاسهای

مختلف را با هم اجرا کنم

اگر یک متد مربوط به یک کلاس اجرا نشود نمیتوانم تمام اطلاعات را برگردانم اینکار قبلا با

transaction انجام میدادم ولی الان نمیشود چون متد ها در کلاسهای مختلف است

برای ینکار باید چیکار کنم؟

amin_iman82
یک شنبه 16 اسفند 1388, 23:27 عصر
به اینصورت مشکلتون حل میشه.
شما باید داخل هر متد از Try استفاده کنید.



Public Function a(...)..

Try
....
Return 1
Catch
Return 0
End Try

End Function

حالا میخواید اگه تایع a درست اجرا شد تابع b هم اجرا بشه



Dim ret As Integer

ret = a(..)

If ret = 1 Then
call b(...)
Else
Exit Sub
End If
اگه واضح نبود بگید دوباره توضیح بدم.
موفق باشید.

sari-1369
یک شنبه 16 اسفند 1388, 23:54 عصر
شما باید برای توابعتون مثل Insert , Update , Delete مقدار برگشتی از نوع Boolean در نظر بگیری ، اگر تابعت با موفقیت کارشو انجام داد مقدار True بفرسی ، اگر نه مقدار False و به این صورت استفاده کنی .

Dim Class1 As New kala
If Class1.add() = True Then
Dim Class2 As New EkipKari
Class2.add()
End If

amin_iman82
دوشنبه 17 اسفند 1388, 00:12 صبح
دقیقا منم منظورم همین بود. حسین جان زحمت کشیدن واضح بیان کردن.

mojtabadj
دوشنبه 17 اسفند 1388, 14:23 عصر
شما باید برای توابعتون مثل Insert , Update , Delete مقدار برگشتی از نوع Boolean در نظر بگیری ، اگر تابعت با موفقیت کارشو انجام داد مقدار True بفرسی ، اگر نه مقدار False و به این صورت استفاده کنی .

Dim Class1 As New kala
If Class1.add() = True Then
Dim Class2 As New EkipKari
Class2.add()
End If


یه سوال در مورد کدتون

اگه متد کلاس دوم اجرا نشد متد کلاس اول رو چطوری بر میگردونین؟

یعنی این کد




Class2.add()

mojtabadj
جمعه 21 اسفند 1388, 11:58 صبح
هیچ کی بلد نیست؟:افسرده:

فکر کنم اینکار رو بشه با dataset انجام داد کسی اطلاعی داره؟:ناراحت: