Форум ASP.NET посоветуйте

laki

чето в инете дохрена их. кто что ставил. и еще бы взглянуть на них
заранее спасибо

Helga87

yetanotherforum.net — терпимо, есть темы и вообще немного похож на phpBB (по моим впечатлениям)

laki

во кстати я его сегодня уже и начал под сайт переделывать темная вещь.
правда я не пойму почему он коннекшены к базе не кроет?

using ( SqlConnection conn = GetConnection )
{
using ( DataSet ds = new DataSet )
{
using ( SqlTransaction trans = conn.BeginTransaction( m_isoLevel ) )
{
using ( SqlDataAdapter da = new SqlDataAdapter( "yaf_forum_moderators", conn ) )
{
da.SelectCommand.CommandType = CommandType.StoredProcedure;
da.SelectCommand.Transaction = trans;
da.Fill( ds, "Moderator" );
}
using ( SqlDataAdapter da = new SqlDataAdapter( "yaf_category_listread", conn ) )
{
da.SelectCommand.CommandType = CommandType.StoredProcedure;
da.SelectCommand.Transaction = trans;
da.SelectCommand.Parameters.AddWithValue( "@BoardID", boardID );
da.SelectCommand.Parameters.AddWithValue( "@UserID", UserID );
da.SelectCommand.Parameters.AddWithValue( "@CategoryID", CategoryID );
da.Fill( ds, "yaf_Category" );
}
using ( SqlDataAdapter da = new SqlDataAdapter( "yaf_forum_listread", conn ) )
{
da.SelectCommand.CommandType = CommandType.StoredProcedure;
da.SelectCommand.Transaction = trans;
da.SelectCommand.Parameters.AddWithValue( "@BoardID", boardID );
da.SelectCommand.Parameters.AddWithValue( "@UserID", UserID );
da.SelectCommand.Parameters.AddWithValue( "@CategoryID", CategoryID );
da.SelectCommand.Parameters.AddWithValue( "@ParentID", parentID );
da.Fill( ds, "yaf_Forum" );
}
ds.Relations.Add( "FK_Forum_Category", ds.Tables ["yaf_Category"].Columns ["CategoryID"], ds.Tables ["yaf_Forum"].Columns ["CategoryID"] );
ds.Relations.Add( "FK_Moderator_Forum", ds.Tables ["yaf_Forum"].Columns ["ForumID"], ds.Tables ["Moderator"].Columns ["ForumID"], false );
trans.Commit;
}
return ds;
}
}

Helga87

правда я не пойму почему он коннекшены к базе не кроет?
в данном случае это не необходимо. Но ваще у него код грязноват. По крайней мере был год назад таким.

laki

в данном случае это не необходимо
поясни

Helga87

1. не необходимо — все работает
2. в данном случае — обычно рекомендуют закрывать соединение, чтобы изолированные куски кода пользовались своим и для того, чтобы не таскать его за собой, не держать открытым больше необходимого. В данном случае идет несколько запросов подряд, локальность имеется. Более того, если отключен ConnectionPool, то это еще и чуть-чуть побыстрее будет.

laki

у меня просто на локальной машине этот форум после небольшого времени работы таймаут эксепшен от сиквела кидает

Dasar

правда я не пойму почему он коннекшены к базе не кроет?
в смысле "не кроет"?
не кроет == не закрывает?
так вроде в коде все закрывается....

laki

обоснуй.

Helga87

обоснуй.
а, так Денис... я даже не понял, что ты имеешь ввиду. Конечно, соединение закрывается. Там же написано
using (SqlConnection con = GetConnection
{
..
}

По выходу из using соединение и закрывается.

FRider

Вот здесь закрывают
using ( SqlConnection conn = GetConnection )
{

Helga87

у меня просто на локальной машине этот форум после небольшого времени работы таймаут эксепшен от сиквела кидает
покажи его

laki

хмм
а не эквивалетно ли это ?
try
{
}
finally
{
cn.Dispose;
}

Helga87

угадал!

laki

ну а где cn.Close? или я чето не понимаю

nikita270601


If the SqlConnection goes out of scope, it remains open. Therefore, you must explicitly close the connection by calling Close or Dispose. Close and Dispose are functionally equivalent.

laki

а все понял. мат часть не читал сенкс

6yrop

кем же ты все-таки работаешь...

Alexander08

антинаучным аферистом?

laki

кем же ты все-таки работаешь...
начальнеГом

Alexander08

начальнегом фарфоровой башни?

Semartiom

А этот - http://www.asp.net/Forums/Download/ никто не пробовал юзать?

laki

на рсдне его хаят. говорят вскрывается за 2е минуты
Оставить комментарий
Имя или ник:
Комментарий: