Ejemplo n.º 1
0
        /// <summary>
        ///     Add A Custom User
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnAddRole_Click(object sender, EventArgs e)
        {
            var r = new Role();

            if (RuntimeMongoDbContext.GetCurrentDataBase() != null)
            {
                r.Database = RuntimeMongoDbContext.GetCurrentDataBase().Name;
            }
            else
            {
                r.Database = ConstMgr.DatabaseNameAdmin;
            }
            r.Rolename   = txtRolename.Text;
            r.Privileges = new Role.Privilege[_privilegeList.Count];
            for (var i = 0; i < _privilegeList.Count; i++)
            {
                r.Privileges[i] = _privilegeList[i];
            }
            r.Roles = new Role.GrantRole[_roleList.Count];
            for (var i = 0; i < _roleList.Count; i++)
            {
                r.Roles[i] = _roleList[i];
            }
            var result = Role.AddRole(RuntimeMongoDbContext.GetCurrentDataBase(), r);

            if (result.IsBsonDocument)
            {
                MyMessageBox.ShowMessage("Error", "Add Role Error", ViewHelper.ConvertToString(result));
            }
            else
            {
                MyMessageBox.ShowEasyMessage("Succeed", "Add Role OK");
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        ///     导出到Excel
        /// </summary>
        /// <param name="dataList"></param>
        /// <param name="filename"></param>
        private static void Export(List <BsonDocument> dataList, string filename, bool IsAutoClose = false)
        {
            var     schame   = MongoHelper.GetCollectionSchame(_processCollection);
            dynamic excelObj = Interaction.CreateObject("Excel.Application");

            excelObj.Visible = true;
            dynamic workbook;
            dynamic worksheet;
            var     isNew = false;

            if (File.Exists(filename))
            {
                workbook  = excelObj.Workbooks.Open(filename);
                worksheet = workbook.Sheets(1);
            }
            else
            {
                isNew     = true;
                workbook  = excelObj.WorkBooks.Add();
                worksheet = workbook.Sheets(1);
            }
            worksheet.Select();
            worksheet.Name = _processCollection.Name;
            var rowCount = 1;
            var colCount = 1;

            foreach (var item in schame)
            {
                worksheet.Cells(rowCount, colCount).Value = item;
                colCount++;
            }
            rowCount++;
            foreach (var docItem in dataList)
            {
                colCount = 1;
                var isSystem = Operater.IsSystemCollection(_processCollection);
                if (!isSystem)
                {
                    BsonElement id;
                    docItem.TryGetElement(ConstMgr.KeyId, out id);
                    worksheet.Cells(rowCount, colCount).Value = !(id.Value is BsonNull)
                        ? docItem.GetValue(ConstMgr.KeyId).ToString()
                        : "[Empty]";
                }
                else
                {
                    worksheet.Cells(rowCount, colCount).Value = docItem.GetValue(schame[0]).ToString();
                }
                //OtherItems
                for (var i = isSystem ? 1 : 0; i < schame.Count; i++)
                {
                    if (schame[i] == ConstMgr.KeyId)
                    {
                        continue;
                    }
                    BsonValue val;
                    docItem.TryGetValue(schame[i], out val);
                    worksheet.Cells(rowCount, i + 1).Value = val == null
                        ? string.Empty
                        : ViewHelper.ConvertToString(val);
                }
                rowCount++;
            }

            if (IsAutoClose)
            {
                if (isNew)
                {
                    workbook.SaveAs(filename);
                }
                else
                {
                    workbook.Save();
                }
                workbook.Close();
                excelObj = null;
            }
        }