Code Monkey home page Code Monkey logo

mongocola's Introduction

#MongoCola MongoCola是一款帮助你在图形界面下查看,操作MongoDB的工具类软件。
本工具的目标是尽量用图形界面来代替命令脚本帮您完成一些日常的MongoDB管理工作。


开发和测试环境

操作系统:

  • Windows 7

运行时:

  • NET Framework 4.7.2
  • MongoDB 4.0.1

驱动程序

CSharp Mongo Driver 2.4.3


重要事项

MongoCola项目的App.config里面不要写任何东西。特别是私有路径,原因如下。
在Mongo Driver中会使用到System.Runtime.InteropServices.RuntimeInformation.dll这个动态连接库。
而如果你的插件项目也有需要RuntimeInformation这个库,请一定要保证设定私有路径,不然会参照MongoDriver的这个库。
但是,你只能在自己的项目里面设定,不能在MongoCola主项目里面设定。
同时MongoUtility项目,由于要和.Net Core共享代码,一定要注意编译条件是否设定,特别是VS版本更新的时候,可能造成编译条件的缺失。

由于该软件的核心动态链接库需要在WebPage和Winform中使用,在当前阶段的开发者,请一定注意以下几点:

使用Nuget包的net463版本的DLL(Nuget包版本是4.1.0,注意,是一个0!!!)

  • System.Linq.dll (4.1.0.0)
  • System.Linq.Expressions.dll (4.1.0.0)

需要加入Nuget包

  • System.Runtime.dll (4.1.0.0)
  • System.Runtime.Extensions.dll 4.1.0.0)
  • System.Runtime.InteropServices.RuntimeInformation.dll (4.0.0.0)
  • System.Xml.ReaderWriter.dll (4.1.0.0)

MongoUtilityStandard正式取代MongoUtility使用在项目里面。 由于二义性问题,只能做两份代码了。MongoUtility作为备份只是放着,但是不进行编辑了。

项目说明

C#的代码分为三个解决方案:

  • MongoCola解决方案
  • Assistant:业务逻辑和辅助类
  • Winform:窗体和控件
  • PlugIn:插件基类
  • ExternalTools:解决方案
  1. ConfigurationFile 配置文件编辑器
  2. MultiLanEditor 多语言文件编辑器
  3. 插件实现
  • MongoCola.Core解决方案
  1. MongoUtilityStandard:MongoUtility的.Net Core编译配置 (VS15构成OK)
  2. MongoColaWebAdmin:Asp.Net Core版的网页版程序 (VS15重新构成出错)
  • Master Slave Replication的废除
    从MongoDB 3.2开始,官方全面废除主从副本,所以所有主从副本的代码都停止维护,并且从代码中删除。 Deprecated since version 3.2: MongoDB 3.2 deprecates the use of master-slave replication for components of sharded clusters. 详细参见官网:https://docs.mongodb.com/manual/core/master-slave/

  • Group功能的废除: 按照MongoDB官方的处理意见,使用Aggregate的Group Pipeline或者MapReduce功能进行代替。

计划

  1. Fix Bug
    解决所有发现的Bug
  2. Config Options
    一个MongoService用Config File文件的生成工具
  3. 扩大Model.TryUpdate的使用范围
    Winform使用了MVC的概念,自动将Model和UI双向绑定 已经在frmConnnection/frmOption里面尝试了
  4. MutliLanguage
    进一步改进多语言系统
  5. User System
    用户系统
  6. Machine Learning 加入对于机器学习方法和BI的支持
  7. SQL转AggregateFrame 原本不完整的SQL转AggregateFrame废止
  8. 服务器读写状态的实时报表:MongoStatus 和 MongoTop,需要进行强化 自定义监视组:改组图标的项目都是自定义的
  9. C#直接操作MongoShell

mongocola's People

Contributors

arcticlampyrid avatar billmoling avatar fzxs8 avatar magicdict avatar s021368 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mongocola's Issues

副本节点加载问题

集群副本节点的主机信息在登录页面可以添加进去,但是进入主页面后看不到副本节点的相关信息,也不能加载副本节点数据库等

程序运行问题

1.5.3版本的ReplicaSet添加不了副本,点击add没有反应
v2.0版本的下载路径在哪里呢
中文汉化语言包在哪里?

BUG 管理

1.打开数据视图,修改数据集名称之后,关闭数据视图,再次打开时候会出现异常.
2015/2/26 By MagicHu

请教一个问题啊,

byte[] imgBytes = client.Execute(new RestRequest()).RawBytes;
BsonDocument bsonDoc = BsonDocument.ReadFrom(imgBytes);

client是一个rest客户端,从远程接收了一个stream数据,可以从RawBytes获得byte[]。
imgBytes 这个是一个图片数据,但这个数据我转成图片怎么也打不开,所以我想看看你代码里怎么从数据库把mongodb里的二进制数据读出来的。可我用BsonDocument.ReadFrom会造成内存溢出。
所以请教一下

TodoList

  1. QueryDocument的模块化
  2. CollationDocumen的模块化
  3. 用户密码不保存,连接时候要求输入
    [开发完成]:连接部分没有完成,测试等到安全功能模块时候再做

新建的用户都Authentication faile

任何使用MongoCola UI新建的用户,都无法使用,登录时反馈:Authentication failed。
同样的用户名、密码、权限、数据库,在服务器用mongo shell新建,用户可以登录,并正常操作。

诡异的是,对比了两者建完的用户json,居然没有发现有差别。

mongodb版本为:3.4.10

Invalid credentials for database 'admin'

使用管理帐户进入数据库,经过一段时间,会无休止的弹出这样的验证失败窗口。
************** 异常文本 **************
MongoDB.Driver.MongoAuthenticationException: Invalid credentials for database 'admin'. ---> MongoDB.Driver.MongoCommandException: Command 'authenticate' failed: auth fails (response: { "errmsg" : "auth fails", "ok" : 0.0 })
在 MongoDB.Driver.Internal.MongoConnection.RunCommand(String collectionName, QueryFlags queryFlags, CommandDocument command)
在 MongoDB.Driver.Internal.MongoConnection.Authenticate(String databaseName, MongoCredentials credentials)
--- 内部异常堆栈跟踪的结尾 ---
在 MagicMongoDBTool.UserController.ctlServerStatus.RefreshCurrentOpr()
在 MagicMongoDBTool.UserController.ctlServerStatus.<ctlServerStatus_Load>b__1(Object x, EventArgs y)
在 System.Windows.Forms.Timer.OnTick(EventArgs e)
在 System.Windows.Forms.Timer.TimerNativeWindow.WndProc(Message& m)
在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

************** 已加载的程序集 **************
mscorlib
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.6111 (Win8RTM.050727-6100)

基本代码: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll

Mongo-Cola
程序集版本: 1.1.3.0
Win32 版本: 1.1.3.0

基本代码: file:///C:/MongoCola-1.13/MongoCola/Mongo-Cola.exe

System.Windows.Forms
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.6111 (Win8RTM.050727-6100)

基本代码: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll

MongoDB.Bson
程序集版本: 1.3.1.4349
Win32 版本: 1.3.1.4349

基本代码: file:///C:/MongoCola-1.13/MongoCola/MongoDB.Bson.DLL

System
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.6111 (Win8RTM.050727-6100)

基本代码: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll

System.Drawing
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.6111 (Win8RTM.050727-6100)

基本代码: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll

System.Xml
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.6111 (Win8RTM.050727-6100)

基本代码: file:///C:/Windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll

System.Configuration
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.6111 (Win8RTM.050727-6100)

基本代码: file:///C:/Windows/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll

xeyvazar
程序集版本: 1.1.3.0
Win32 版本: 2.0.50727.6111 (Win8RTM.050727-6100)

基本代码: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll

System.Core
程序集版本: 3.5.0.0
Win32 版本: 3.5.30729.6111 built by: Win8RTM

基本代码: file:///C:/Windows/assembly/GAC_MSIL/System.Core/3.5.0.0__b77a5c561934e089/System.Core.dll

Accessibility
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.6111 (Win8RTM.050727-6100)

基本代码: file:///C:/Windows/assembly/GAC_MSIL/Accessibility/2.0.0.0__b03f5f7f11d50a3a/Accessibility.dll

System.Windows.Forms.resources
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.6111 (Win8RTM.050727-6100)

基本代码: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_zh-CHS_b77a5c561934e089/System.Windows.Forms.resources.dll

System.resources
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.6111 (Win8RTM.050727-6100)

基本代码: file:///C:/Windows/assembly/GAC_MSIL/System.resources/2.0.0.0_zh-CHS_b77a5c561934e089/System.resources.dll

MongoDB.Driver
程序集版本: 1.3.1.4349
Win32 版本: 1.3.1.4349

基本代码: file:///C:/MongoCola-1.13/MongoCola/MongoDB.Driver.DLL

mscorlib.resources
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.6111 (Win8RTM.050727-6100)

基本代码: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll

WindowsBase
程序集版本: 3.0.0.0
Win32 版本: 3.0.6920.6111 built by: Win8RTM

基本代码: file:///C:/Windows/assembly/GAC_MSIL/WindowsBase/3.0.0.0__31bf3856ad364e35/WindowsBase.dll

请教关于mongodb2.6的用户认证问题

能否发一个编译好能用的程序给我,我这边vs2010没导进去。。邮箱[email protected],非常感谢。
还有一个额外的问题想请教,如题,我的问题是mongodb官网给出的C#驱动貌似并没有对2.6版本的用户认证做出升级支持,我看了MagicMongoDBTool里面关于用户的代码,看起来你们的做法是直接操作用户表的内容然后保存的,那么我想知道用C#实现还有别的方法给非admin的数据库添加用户吗?
我测试安装一个新的mongodb2.6,然后我用runCommand方式createUser一个admin的超级用户赋予了对所有数据的管理,用户管理和读写权限,然后我再通过认证登陆admin数据库然后切换到一个新的数据库temp,然后我想给这个temp添加用户也通过runCommand方式结果总是报错,说我没有认证temp数据库没有权限操作。谢谢你们了。

release

为什么 release 为0 啊,, 可以定期release个啊

是否可以支持 .net3 而不要 .net4

项目是在vs 2010 ,使用 .net4 ,但是多数人的开发环境还是 vs 2008 ,.net3 ,在 vs2008中不能够打开解决方案,直接下载编译好的,需要.net4 ,是否可以提供一个.net3的版本,如:mongovue就可以在.net3 下运行。或者提供一个.net3的编译好的版本也可以。

请提供一个编译好的执行程序

看了这个工具,也看了代码,觉得还挺好的,建议放一个可直接下载运行的版本,目前下载后,好像必须自己编译一下,才能用。

Document issue track

Are you sure it is UserGuard not UserGuide? I modify two locations in wiki. Please confirm.

双击64位整数值抛出异常

提示超出范围,但是实际上并没有。
比如 20170217093605,并没有超出 64 位整数的范围,双击出现.net的标准异常窗口,提示信息:

System.ArgumentOutOfRangeException: “20170216093600”的值对于“Value”无效。“Value”应介于 'Minimum' 和 'Maximum' 之间。
参数名: Value
在 System.Windows.Forms.NumericUpDown.set_Value(Decimal value)
在 MongoGUICtl.ctlBsonValue.SetValue(BsonValue value, BasicType DataType)
在 FunctionForm.Extend.FrmElement.frmElement_Load(Object sender, EventArgs e)
在 System.Windows.Forms.Form.OnLoad(EventArgs e)
在 System.Windows.Forms.Form.OnCreateControl()
在 System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
在 System.Windows.Forms.Control.CreateControl()
在 System.Windows.Forms.Control.WmShowWindow(Message& m)
在 System.Windows.Forms.Control.WndProc(Message& m)
在 System.Windows.Forms.Form.WmShowWindow(Message& m)
在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.