Invalid object name 'server_forums'.
От: IID Россия  
Дата: 12.06.09 17:48
Оценка:
Ошибка:
Invalid object name 'server_forums'.

Описание:


Версия приложения:
RSDN@Home версия 1.2.0 alpha 4 ревизия 1228

Тип БД:
MSSql

Трассировка стека:
   at Rsdn.SmartApp.InstancingHelper.CreateInstance(Type type, IServiceProvider provider, InstancingCustomParam[] customParams) in C:\Work\R.Server\R.SAT\R.SAT-Common\Instancing\InstancingHelper.cs:line 67
   at Rsdn.SmartApp.ActivePartManager.Activate() in C:\Work\R.Server\R.SAT\R.SAT-Common\ActiveParts\ActivePartManager.cs:line 76
   at Rsdn.Janus.JanusHost.EndInit()
   at Rsdn.SmartApp.DisposableHelper.Disposable.Dispose() in C:\Work\R.Server\R.SAT\R.SAT-Common\DisposableHelper.cs:line 38
   at Rsdn.Janus.Janus.Main()
... << RSDN@Home 1.2.0 alpha 4 rev. 1228>>
kalsarikännit
В экземпляре объекта не задана ссылка на объект.
От: Дьяченко Александр Россия  
Дата: 20.06.09 16:45
Оценка:
Ошибка:
В экземпляре объекта не задана ссылка на объект.

Описание:
в поиске, выбрать корневое сообщение (сначала найти что-нибудь естествено).

На мой взгляд ошибка в файле Janus\Features\ForumViewer\Commands\ForumMessageCommandTarget.cs в методе QuerySetTopicReadMarkStatus (строка 221):
        [CommandStatusGetter("Janus.Forum.SetTopicReadMark")]
        public CommandStatus QuerySetTopicReadMarkStatus(
            ICommandContext context, int[] messageIds, bool isRead)
        {
            return QueryMessagesCommandStatus(context, messageIds).DisabledIfNot(
                () => ForumMessageCommandHelper.GetMessages(context, messageIds)
                    .Select(msg => msg.Topic)
                    .Any(msg => msg.CanSetMessageReadMark(isRead, true)));
        }

выделенный Select помоему лишний. Так например в случае если выше по ветке есть что пометить, а ниже нету, то результат получается не правильный.

Версия приложения:
RSDN@Home версия 1.2.0 alpha 4 ревизия 1231

Тип БД:
MSSql

Трассировка стека:
   в Rsdn.Janus.ForumMessageCommandHelper.CanSetMessageReadMark(IMsg msg, Boolean isRead, Boolean withReplies)
   в Rsdn.Janus.ForumMessageCommandTarget.<>c__DisplayClass14.<QuerySetTopicReadMarkStatus>b__13(IMsg msg)
   в System.Linq.Enumerable.Any[TSource](IEnumerable`1 source, Func`2 predicate) в C:\Work\Mono\System.Core\System.Linq\Enumerable.cs:строка 128
   в Rsdn.Janus.ForumMessageCommandTarget.<>c__DisplayClass14.<QuerySetTopicReadMarkStatus>b__11()
   в Rsdn.Janus.CommandStatusHelper.DisabledIfNot(CommandStatus baseStatus, Func`1 condition)
   в Rsdn.Janus.ForumMessageCommandTarget.QuerySetTopicReadMarkStatus(ICommandContext context, Int32[] messageIds, Boolean isRead)
... << RSDN@Home 1.2.0 alpha 4 rev. 1231>>
Re: В экземпляре объекта не задана ссылка на объект.
От: Дьяченко Александр Россия  
Дата: 20.06.09 16:54
Оценка: +1
мне почему-то казалось по кнопки ввиде конверта со стрелкой вниз помечалась прочитаным не вся тема, а только ветка...

значит надо не Select выкидывать а добавить фильтр:
.Where(msg => msg.Topic <> null)


или разобраться почему там получается null, ведь в обычном форуме ничего не валится.
... << RSDN@Home 1.2.0 alpha 4 rev. 1231>>
Re[2]: В экземпляре объекта не задана ссылка на объект.
От: jenyavb  
Дата: 20.06.09 17:40
Оценка:
Здравствуйте, Дьяченко Александр, Вы писали:

ДА>мне почему-то казалось по кнопки ввиде конверта со стрелкой вниз помечалась прочитаным не вся тема, а только ветка...


ДА>значит надо не Select выкидывать а добавить фильтр:

ДА>
ДА>.Where(msg => msg.Topic <> null)
ДА>


ДА>или разобраться почему там получается null, ведь в обычном форуме ничего не валится.


Скорее всего в списке поиска используется другая реализация класса сообщения, которая просто возвращает null. Раньше кнопки пометки сообщений прочтенным в поиске не показывались, поэтому и эта лажа не выявлялась. Так что фиксить надо это класс, а не обработчик команды.
Строка не подключена к TreGrid!
От: ilvi Россия  
Дата: 21.06.09 09:42
Оценка:
Ошибка:
Строка не подключена к TreGrid!

Описание:


Версия приложения:
RSDN@Home версия 1.2.0 alpha 4 ревизия 1228

Тип БД:
SQLite

Трассировка стека:
   at Rsdn.TreeGrid.TreeGrid.ExpandAllParents(ITreeNode CurNode)
   at Rsdn.TreeGrid.TreeGrid.set_ActiveNode(ITreeNode value)
   at Rsdn.Janus.ForumDummyForm.MessageNavigated(Object sender, EventArgs e)
   at System.EventHandler.Invoke(Object sender, EventArgs e)
   at Rsdn.Janus.ForumNavigator.HistoryNavigateFired(Object sender, MessageNavigateEventArgs e)
   at Rsdn.Janus.MessageViewHistory.OnMessageNavigate(MessageNavigateEventArgs e)
   at Rsdn.Janus.MessageViewHistory.Navigate(Int32 msgId)
   at Rsdn.Janus.ForumNavigator.SelectMessage(Int32 forumId, Int32 msgId)
   at Rsdn.Janus.ForumDummyForm.<>c__DisplayClass9.<_tgMsgs_AfterActivateNode>b__8()
   at Rsdn.Janus.AsyncHelper.<>c__DisplayClass4.<PostOperationCompleted>b__3(Object state)
... << RSDN@Home 1.2.0 alpha 4 rev. 1228>>
Object reference not set to an instance of an object.
От: tyger Россия  
Дата: 24.06.09 02:40
Оценка:
Ошибка:
Object reference not set to an instance of an object.

Описание:


Версия приложения:
RSDN@Home версия 1.2.0 alpha 4 ревизия 1227

Тип БД:
SQLite

Трассировка стека:
   at Rsdn.Janus.ForumMessageCommandHelper.CanSetMessageReadMark(IMsg msg, Boolean isRead, Boolean withReplies)
   at Rsdn.Janus.ForumMessageCommandTarget.<>c__DisplayClass14.<QuerySetTopicReadMarkStatus>b__13(IMsg msg)
   at System.Linq.Enumerable.Any[TSource](IEnumerable`1 source, Func`2 predicate) in C:\Work\Mono\System.Core\System.Linq\Enumerable.cs:line 128
   at Rsdn.Janus.ForumMessageCommandTarget.<>c__DisplayClass14.<QuerySetTopicReadMarkStatus>b__11()
   at Rsdn.Janus.CommandStatusHelper.DisabledIfNot(CommandStatus baseStatus, Func`1 condition)
   at Rsdn.Janus.ForumMessageCommandTarget.QuerySetTopicReadMarkStatus(ICommandContext context, Int32[] messageIds, Boolean isRead)
... << RSDN@Home 1.2.0 alpha 4 rev. 1227>>
Re[2]: В экземпляре объекта не задана ссылка на объект.
От: _Raz_  
Дата: 28.06.09 13:36
Оценка:
Здравствуйте, Дьяченко Александр, Вы писали:

ДА>значит надо не Select выкидывать а добавить фильтр:

ДА>
ДА>.Where(msg => msg.Topic <> null)
ДА>


.Where(msg => msg != null)

решает
... << RSDN@Home 1.2.0 alpha 4 rev. 1231>>
Re[3]: В экземпляре объекта не задана ссылка на объект.
От: _Raz_  
Дата: 28.06.09 13:36
Оценка:
Здравствуйте, jenyavb, Вы писали:

J>Скорее всего в списке поиска используется другая реализация класса сообщения, которая просто возвращает null.

Точно, это LinearTreeMsg, используемый [Obsolete] ModeratingForm и SearchDummyForm (поиск Lucene)

J>Так что фиксить надо это класс, а не обработчик команды.

Но Rsdn.Janus.ObjectModel.IMsg
        /// <summary>Возвращает корневое сообщение (тему) или null если такая
        /// функциональность не поддерживается текущей реализацией.</summary>
        IMsg Topic{ get; }


хотя...
    // TODO: эту кашу наждо рефакторить.
    /// <summary>
    /// Summary description for IMsg.
    /// </summary>

... << RSDN@Home 1.2.0 alpha 4 rev. 1231>>
Invalid object name 'topic_info'.
От: _MarlboroMan_ Россия  
Дата: 28.06.09 23:05
Оценка:
Ошибка:
Invalid object name 'topic_info'.

Описание:


Версия приложения:
RSDN@Home версия 1.2.0 alpha 4 ревизия 1231

Тип БД:
MSSql

Трассировка стека:
   at BLToolkit.Data.DbManager.OnOperationException(OperationType op, DataException ex)
   at BLToolkit.Data.DbManager.HandleOperationException(OperationType op, Exception ex)
   at BLToolkit.Data.DbManager.ExecuteOperation[T](OperationType operationType, Func`1 operation)
   at BLToolkit.Data.DbManager.ExecuteReaderInternal(CommandBehavior commandBehavior)
   at BLToolkit.Data.DbManager.ExecuteObjectInternal(Object entity, Type type, Object[] parameters)
   at BLToolkit.Data.DbManager.ExecuteObject[T]()
   at Rsdn.Janus.DatabaseManager.CheckTopicInfoIntegrity()
   at Rsdn.Janus.Janus.Main()
... << RSDN@Home 1.2.0 alpha 4 rev. 1231>>

— сколько программистов надо чтобы заменить сгоревшую лампочку?
— сколько не бери, а лампочку не поменять — проблема аппаратная, программным путем не решается...
Object reference not set to an instance of an object.
От: Try  
Дата: 04.07.09 23:41
Оценка:
Ошибка:
Object reference not set to an instance of an object.

Описание:


Версия приложения:
RSDN@Home версия 1.2.0 alpha 4 ревизия 1228

Тип БД:
MSSql

Трассировка стека:
   at Rsdn.Janus.ForumMessageCommandHelper.CanSetMessageReadMark(IMsg msg, Boolean isRead, Boolean withReplies)
   at Rsdn.Janus.ForumMessageCommandTarget.<>c__DisplayClass14.<QuerySetTopicReadMarkStatus>b__13(IMsg msg)
   at System.Linq.Enumerable.Any[TSource](IEnumerable`1 source, Func`2 predicate) in C:\Work\Mono\System.Core\System.Linq\Enumerable.cs:line 128
   at Rsdn.Janus.ForumMessageCommandTarget.<>c__DisplayClass14.<QuerySetTopicReadMarkStatus>b__11()
   at Rsdn.Janus.CommandStatusHelper.DisabledIfNot(CommandStatus baseStatus, Func`1 condition)
   at Rsdn.Janus.ForumMessageCommandTarget.QuerySetTopicReadMarkStatus(ICommandContext context, Int32[] messageIds, Boolean isRead)
... << RSDN@Home 1.2.0 alpha 4 rev. 1228>>
В экземпляре объекта не задана ссылка на объект.
От: Tosh Россия  
Дата: 05.07.09 17:25
Оценка:
Ошибка:
В экземпляре объекта не задана ссылка на объект.

Описание:


Версия приложения:
RSDN@Home версия 1.2.0 alpha 4 ревизия 1228

Тип БД:
SQLite

Трассировка стека:
   в Rsdn.Janus.ForumMessageCommandHelper.CanSetMessageReadMark(IMsg msg, Boolean isRead, Boolean withReplies)
   в Rsdn.Janus.ForumMessageCommandTarget.<>c__DisplayClass14.<QuerySetTopicReadMarkStatus>b__13(IMsg msg)
   в System.Linq.Enumerable.Any[TSource](IEnumerable`1 source, Func`2 predicate) в C:\Work\Mono\System.Core\System.Linq\Enumerable.cs:строка 128
   в Rsdn.Janus.ForumMessageCommandTarget.<>c__DisplayClass14.<QuerySetTopicReadMarkStatus>b__11()
   в Rsdn.Janus.CommandStatusHelper.DisabledIfNot(CommandStatus baseStatus, Func`1 condition)
   в Rsdn.Janus.ForumMessageCommandTarget.QuerySetTopicReadMarkStatus(ICommandContext context, Int32[] messageIds, Boolean isRead)
... << RSDN@Home 1.2.0 alpha 4 rev. 1228>>
Re[3]: В экземпляре объекта не задана ссылка на объект.
От: ixor Россия  
Дата: 07.07.09 08:40
Оценка:
Здравствуйте, _Raz_, Вы писали:

_R_>Здравствуйте, Дьяченко Александр, Вы писали:


ДА>>значит надо не Select выкидывать а добавить фильтр:

ДА>>
ДА>>.Where(msg => msg.Topic <> null)
ДА>>


_R_>
_R_>.Where(msg => msg != null)
_R_>

_R_>решает

В других местах багов от этого не вылазит\вылезет?
RSDN@Home 1.2.0 alpha 4 rev. 1233 + Windows XP 5.1.2600.196608 + SqLite
Re[3]: В экземпляре объекта не задана ссылка на объект.
От: ixor Россия  
Дата: 07.07.09 08:47
Оценка:
Здравствуйте, jenyavb, Вы писали:

ДА>>мне почему-то казалось по кнопки ввиде конверта со стрелкой вниз помечалась прочитаным не вся тема, а только ветка...


ДА>>значит надо не Select выкидывать а добавить фильтр:

ДА>>
ДА>>.Where(msg => msg.Topic <> null)
ДА>>


ДА>>или разобраться почему там получается null, ведь в обычном форуме ничего не валится.


J>Скорее всего в списке поиска используется другая реализация класса сообщения, которая просто возвращает null. Раньше кнопки пометки сообщений прочтенным в поиске не показывались, поэтому и эта лажа не выявлялась. Так что фиксить надо это класс, а не обработчик команды.


Кстати в туже тему. Последовательность действий.
Ищем поиском. Переходим на сообщение. Ставим пометку прочитано\не прочитано. Возвращамся в поиск. Сообщения, которые висят в поиске статус не изменили.

С уважением, ixor.
RSDN@Home 1.2.0 alpha 4 rev. 1233 + Windows XP 5.1.2600.196608 + SqLite
Re[4]: В экземпляре объекта не задана ссылка на объект.
От: _Raz_  
Дата: 07.07.09 09:35
Оценка:
Здравствуйте, ixor, Вы писали:

_R_>>
_R_>>.Where(msg => msg != null)
_R_>>


I>В других местах багов от этого не вылазит\вылезет?


У меня с 26.08.09 полет нормальный.

Index: Janus/Features/ForumViewer/Commands/ForumMessageCommandTarget.cs
===================================================================
--- Janus/Features/ForumViewer/Commands/ForumMessageCommandTarget.cs    (revision 1233)
+++ Janus/Features/ForumViewer/Commands/ForumMessageCommandTarget.cs    (working copy)
@@ -224,6 +224,7 @@
             return QueryMessagesCommandStatus(context, messageIds).DisabledIfNot(
                 () => ForumMessageCommandHelper.GetMessages(context, messageIds)
                     .Select(msg => msg.Topic)
+                    .Where(msg => msg != null)
                     .Any(msg => msg.CanSetMessageReadMark(isRead, true)));
         }


ps
r#:

MessageMarkService.cs (in <Janus>\rsdn.ru\ForumViewer) — 1 error
Possible 'null' assignment to entity marked with 'NotNull' attribute

... << RSDN@Home 1.2.0 alpha 4 rev. 1233>>
Re[5]: В экземпляре объекта не задана ссылка на объект.
От: ixor Россия  
Дата: 07.07.09 10:40
Оценка:
Здравствуйте, _Raz_, Вы писали:

Легче не стало.
Лечит не то или не так.

Правой кнопкой на сообщении в поиске или из тулбара-> пометить сообщение как прочитаное.

System.Reflection.TargetInvocationException: Адресат вызова создал исключение. ---> System.NullReferenceException: В экземпляре объекта не задана ссылка на объект.
   в Rsdn.Janus.ForumDummyForm.AfterReadMarkChanged(IMessageMarkService sender, ICollection`1 changedEntries)
   в Rsdn.Janus.ReadMarkEventHandler.Invoke(IMessageMarkService sender, ICollection`1 changedEntries)
   в Rsdn.Janus.MessageMarkService.<>c__DisplayClassd.<OnReadMarkChanged>b__c()
   в Rsdn.Janus.AsyncHelper.<>c__DisplayClass1.<Post>b__0(Object state)
   --- Конец трассировки внутреннего стека исключений ---
   в System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
   в System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
   в System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
   в System.Delegate.DynamicInvokeImpl(Object[] args)
   в System.Windows.Forms.Control.InvokeMarshaledCallbackDo(ThreadMethodEntry tme)
   в System.Windows.Forms.Control.InvokeMarshaledCallbackHelper(Object obj)
   в System.Threading.ExecutionContext.runTryCode(Object userData)
   в System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
   в System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
   в System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   в System.Windows.Forms.Control.InvokeMarshaledCallback(ThreadMethodEntry tme)
   в System.Windows.Forms.Control.InvokeMarshaledCallbacks()
   в System.Windows.Forms.Control.MarshaledInvoke(Control caller, Delegate method, Object[] args, Boolean synchronous)
   в System.Windows.Forms.Control.Invoke(Delegate method, Object[] args)
   в System.Windows.Forms.WindowsFormsSynchronizationContext.Send(SendOrPostCallback d, Object state)
   в Rsdn.Janus.AsyncHelper.Send(AsyncOperation asyncOp, Action runner)
   в Rsdn.Janus.NotifyIconService.set_ContextMenuName(String value)
   в Rsdn.Janus.NotifyIconService.Dispose()
   в Rsdn.SmartApp.DisposableHelper.DisposeAll(IEnumerable`1 disposables) в C:\Work\R.Server\R.SAT\R.SAT-Common\DisposableHelper.cs:строка 22
   в Rsdn.SmartApp.ServiceManager.Dispose() в C:\Work\R.Server\R.SAT\R.SAT-Common\Services\ServiceManager.cs:строка 260
   в Rsdn.Janus.JanusHost.Dispose()
   в Rsdn.Janus.Janus.Main()


С уважением, ixor.
RSDN@Home 1.2.0 alpha 4 rev. 1233 + Windows XP 5.1.2600.196608 + SqLite
Re[6]: В экземпляре объекта не задана ссылка на объект.
От: _Raz_  
Дата: 07.07.09 11:48
Оценка:
Здравствуйте, ixor, Вы писали:

I>Легче не стало.

У меня стало.

I>Лечит не то или не так.

Лечит то, что и должно, а именно исключение в корне этой ветки.

I>Правой кнопкой на сообщении в поиске или из тулбара-> пометить сообщение как прочитаное.

ставим помечать прочитанным в 10000 и
+ становимся в форуме на не прочитанное, быстро помечаем его избранным, переходим в избранное. ба бах.
+ становимся в форуме на не прочитанное, потом на другое не прочитанное, быстро переходим в исходящие. ба бах.
+ становимся в форуме на не прочитанное, потом на другое не прочитанное, быстро переходим в поиск. ба бах.

проблема в том, что в избранном/поиске/исходящих отсутствует активный форум, т. е. Forums.Instance.ActiveForum == null

        private void BeforeReadMarkChanged(
            IMessageMarkService sender, ICollection<ForumEntryIds> changedEntries)
        {
            if (changedEntries == null
                    || changedEntries
                        .Where(entry => entry.GetEntryType() == ForumEntryType.Forum)
                        .Any(forumEntry => forumEntry.ForumId == Forums.Instance.ActiveForum.ID))
            {
                StopMarkTimer();
                _tgMsgs.Nodes = null;
            }
            else if (changedEntries
                    .Select(entry => entry.ForumId)
                    .Contains(Forums.Instance.ActiveForum.ID))
                StopMarkTimer();
        }


Для справки: Forums.Instance.ActiveForum.get используется в 25 местах, причем завязан на ObjectModel.Features.Instance.ActiveFeature.
... << RSDN@Home 1.2.0 alpha 4 rev. 1233>>
Re[7]: В экземпляре объекта не задана ссылка на объект.
От: ixor Россия  
Дата: 07.07.09 17:09
Оценка:
Здравствуйте, _Raz_, Вы писали:

_R_>Здравствуйте, ixor, Вы писали:


I>>Легче не стало.

_R_>У меня стало.

I>>Лечит не то или не так.

_R_>Лечит то, что и должно, а именно исключение в корне этой ветки.

Понавставлял проверок. исключения сыпаться перестали. Вместе с ними естественно отвалился функционал пометки Что предсказуемо.

Вот что у меня вызывает опасения, не угробят ли рано или поздно эти поверки базу данных. Там местами есть отмена процесса пометок. Или я его неправильно понял.

У Вас еще есть патчи?

С уваженим, ixor.
<a href="http://folding.extremeoverclocking.com/user_summary.php?s=&amp;u=448608" title="my user summary"><img src="http://folding.e
Re[8]: В экземпляре объекта не задана ссылка на объект.
От: _Raz_  
Дата: 07.07.09 20:35
Оценка:
Здравствуйте, ixor, Вы писали:

I>Понавставлял проверок. исключения сыпаться перестали.

Я то же пробывал, но днем, так что пишу по памяти.

I>Вместе с ними естественно отвалился функционал пометки

Оно помечается, но только в форуме, где расположено искомое сообщение. А в поиске не обновляется. Если перейти в другой форум, а потом вернуться, то уже будет помеченным.
Если добавить и подписаться на уведомления IMessageMarkService, то помечается. В обработчиках событий я просто делал перерисовку таблицы.
Плюс возможно правильней использовать ForumHelper.MsgMark (что-то такое вызывается по таймеру в ForumDummyForm) напрямую, а не через обработчик контекстного меню.

I>Что предсказуемо.

Разве? По моему там просто останавливался таймер. Хотя у меня исключения выбрасываются по месту возникновения и мог не дойти до таких мест или я уже забыл, что там.

I>Вот что у меня вызывает опасения, не угробят ли рано или поздно эти поверки базу данных. Там местами есть отмена процесса пометок. Или я его неправильно понял.

Трудно сказать.
Ястно только, что меню в форме поиска надо сократить. Поскольку "Помечать тему прочитанной" валиться с cross-thread exception, а смысла в поиске не имеет. Так же как и экспорт, который не падает, но и не работает.

I>У Вас еще есть патчи?

Нет.
... << RSDN@Home 1.2.0 alpha 4 rev. 1233>>
В экземпляре объекта не задана ссылка на объект.
От: Tosh Россия  
Дата: 12.07.09 13:09
Оценка:
Ошибка:
В экземпляре объекта не задана ссылка на объект.

Описание:


Версия приложения:
RSDN@Home версия 1.2.0 alpha 4 ревизия 1237

Тип БД:
SQLite

Трассировка стека:
   в Rsdn.Janus.ForumMessageCommandHelper.CanSetMessageReadMark(IMsg msg, Boolean isRead, Boolean withReplies)
   в Rsdn.Janus.ForumMessageCommandTarget.<>c__DisplayClass14.<QuerySetTopicReadMarkStatus>b__13(IMsg msg)
   в System.Linq.Enumerable.Any[TSource](IEnumerable`1 source, Func`2 predicate) в C:\Work\Mono\System.Core\System.Linq\Enumerable.cs:строка 128
   в Rsdn.Janus.ForumMessageCommandTarget.<>c__DisplayClass14.<QuerySetTopicReadMarkStatus>b__11()
   в Rsdn.Janus.CommandStatusHelper.DisabledIfNot(CommandStatus baseStatus, Func`1 condition)
   в Rsdn.Janus.ForumMessageCommandTarget.QuerySetTopicReadMarkStatus(ICommandContext context, Int32[] messageIds, Boolean isRead)
... << RSDN@Home 1.2.0 alpha 4 rev. 1237>>
Re[7]: В экземпляре объекта не задана ссылка на объект.
От: jenyavb  
Дата: 12.07.09 19:23
Оценка:
Здравствуйте, _Raz_, Вы писали:

_R_>проблема в том, что в избранном/поиске/исходящих отсутствует активный форум, т. е. Forums.Instance.ActiveForum == null

_R_>Для справки: Forums.Instance.ActiveForum.get используется в 25 местах, причем завязан на ObjectModel.Features.Instance.ActiveFeature.

Проблема в том, что в ForumDummyForm нет свойства CurrentForum, а вместо этого есть офигенное решение — хранить ActiveForum в синглтоне и постоянно синхронизировваться с ним, что создает кучу неудобств. Собственно нужно перенести ActiveForum в ForumDummyForm, а доступ к нему из вне организовать через сервисы IForumViewerService и IActiveForumService... Затра попробую заняться, если время будет...
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.