コード例 #1
0
        internal static QpPluginVersion GetById(int id, int pluginId = 0)
        {
            QpPluginVersion qpPluginVersion;

            if (id == QpPluginVersion.CurrentVersionId)
            {
                if (pluginId == 0)
                {
                    throw new Exception("Plugin id is not specified!");
                }

                var plugin = QpPluginRepository.GetById(pluginId);
                qpPluginVersion = new QpPluginVersion
                {
                    PluginId           = pluginId,
                    Id                 = id,
                    Modified           = plugin.Modified,
                    LastModifiedBy     = plugin.LastModifiedBy,
                    LastModifiedByUser = plugin.LastModifiedByUser,
                    Plugin             = plugin
                };
            }
            else
            {
                var dal = QPContext.EFContext.PluginVersionSet.Include(n => n.LastModifiedByUser).SingleOrDefault(n => n.Id == id);
                qpPluginVersion = MapperFacade.QpPluginVersionMapper.GetBizObject(dal);
                if (qpPluginVersion != null)
                {
                    qpPluginVersion.Plugin = QpPluginRepository.GetById(qpPluginVersion.PluginId);
                }
            }

            return(qpPluginVersion);
        }
コード例 #2
0
ファイル: QpPluginRepository.cs プロジェクト: QuantumArt/QP
        public static void CreateVersion(QpPlugin plugin)
        {
            var entities = QPContext.EFContext;
            var version  = new QpPluginVersion
            {
                Contract       = plugin.OldContract,
                Modified       = plugin.OldModified,
                LastModifiedBy = plugin.OldLastModifiedBy,
                Created        = DateTime.Now,
                Plugin         = plugin,
                PluginId       = plugin.Id
            };
            var dal = MapperFacade.QpPluginVersionMapper.GetDalObject(version);

            entities.Entry(dal).State = EntityState.Added;
            entities.SaveChanges();
        }