Beispiel #1
0
        public static void AddNewTopic(TopicInfo topic)
        {
            TransactionOptions options = new TransactionOptions();

            options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
            options.Timeout        = TransactionManager.DefaultTimeout;

            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options))
            {
                int topicSysNo = TopicDac.InsertTopic(topic);

                // 添加了新评论,
                // 同时更新 Product 表的 RemarkCount / RemarkScore 字段。
                TopicDac.UpdateProductRemarkCountAndScore(topic.ReferenceSysNo);

                if (topic.ImageList != null && topic.ImageList.Count > 0)
                {
                    foreach (TopicImageInfo info in topic.ImageList)
                    {
                        info.TopicSysNo = topicSysNo;
                        TopicImageDac.InsertTopicImage(info);
                    }
                }

                scope.Complete();
            }
        }