Git Product home page Git Product logo

documentdbstudio's Introduction

Azure DocumentDB Studio

A client management viewer/explorer for Microsoft Azure DocumentDB service.

Currently it supports:
1. Easily browse DocumentDB resources and learn DocumentDB resource model.
2. Support Create, Read, Update, Delete (CRUD) and Query operations for every DocumentDB resources and resource feed.
3. Support SQL/UDF query. Execute Javascript storedprocedure. Execute Trigger.
4. Inspect headers (for quota, usage, RG charge etc) for every request operation. Support three connection mode: TCP, HTTPDirect and Gateway.
5. Support RequestOptions(for pre/post trigger, sessionToken, consistency model etc), FeedOptions(for paging, enableScanforQuery etc), IndexingPolicy (for indexingMode, indexingType, indexingPath etc).
6. PrettyPrint the output JSON.
7. Bulk import the JSON files.

To start:
1. Add your account from File|Add account. You can provision and get your account endpoint and masterkey from https://portal.azure.com
2. You can start navigating the DocumentDB resource model in the left side treeview panel.
3. Right click any resource feed or item for supported CRUD or query or stored procedure operation.
The tool run on Windows.

Future ideas to improve:
1. Richer intellisense support for editor (Syntax highlighting for SQL/Javascript, easy grid based editing for JSON).

I welcome everyone to contribue to this project. Drop me a note ([email protected]) if you have any question.

documentdbstudio's People

Contributors

gboya avatar jkewley avatar marnun avatar mingaliu avatar nomiero avatar petertirrell avatar ryancrawcour avatar schellem avatar stefanpuntnl avatar thedarkcode avatar varomashms avatar youngjaekim 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

documentdbstudio's Issues

Downloaded solution does not build

Using VS-2015 (Enterprise).
#1 Restoring NuGet on Build, fails.
#2 All references cannot be found, e.g. System, System.net.
< Installed .NET Frameworks >
.NET FW 2.0 SP 2 (CLR:2.0)
.NET FW 3.0 SP 2 (CLR:2.0)
.NET FW 3.5 SP 1 (CLR:2.0)
.NET FW 4.6.1 (CLR:4.0)

Severity Code Description Project File Line Suppression State
Error This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is ..\packages\Microsoft.Azure.DocumentDB.1.10.0\build\Microsoft.Azure.DocumentDB.targets. DocumentDBStudio C:\temp\DocumentDBStudio-master\DocumentDBStudio-master\DocumentDBStudio\DocumentDBStudio.csproj 315

Any help appreciated,
Michael

Replace DocumentCollection doesn't appear to work

Steps to reproduce:

  1. Read an existing Document Collection
  2. Click replace Document Collection
  3. Make some changes to the Index Policy
  4. Click Execute
  5. See the message Replace DocumentCollection succeed!
  6. Read the Document Collection again... the index policy does not appear to update.

Results documents are collapsed by default

When querying a collection, all returned JSON results as collapsed. Is there a way to configure the app to expand all the returned elements? Having to click every {...} element to see what it is is far from ideal.

Upgrade from Microsoft.Azure.DocumentDB" version="1.11.1" to latest

Do plan for an upgrade on the client, as few feature set doesn't work as expected on 1.11.1 for example auto split of partition collection is not enabled by default.
We ended up in soup (intermittently) just because we ended up accessing our cosmos db account via this version "1.11.1".

Delete more than one document at a time

Is it possible to delete multiple documents at a time?

Is it possible to delete a document directly after selecting "Delete Document", instead of clicking "Execute" additionally?

Creating Procedure: Microsoft.Azure.Documents.DocumentClientException: The input authorization token can't serve the request. Please check that the expected payload is built as per the protocol, and check the key being used. Server used the following payload to sign: 'post sprocs

When trying to create a procedure the following error is generated:

Microsoft.Azure.Documents.DocumentClientException: The input authorization token can't serve the request. Please check that the expected payload is built as per the protocol, and check the key being used. Server used the following payload to sign: 'post
sprocs
dbs/pmg-docdb-rd-test/colls/JobResults
wed, 18 jan 2017 12:37:21 gmt

'
ActivityId: 9c6d35b9-fbf6-4727-9dda-98a88bb0fc43
at Microsoft.Azure.Documents.Client.ClientExtensions.d__4.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter1.GetResult() at Microsoft.Azure.Documents.GatewayStoreModel.<>c__DisplayClass10.<<InvokeAsync>b__f>d__12.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()
at Microsoft.Azure.Documents.BackoffRetryUtility1.<>c__DisplayClass2.<<ExecuteAsync>b__0>d__4.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()
at Microsoft.Azure.Documents.BackoffRetryUtility1.<ExecuteRetry>d__1b.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at Microsoft.Azure.Documents.BackoffRetryUtility1.d__1b.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter1.GetResult() at Microsoft.Azure.Documents.BackoffRetryUtility1.d__a.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter1.GetResult() at Microsoft.Azure.Documents.GatewayStoreModel.<InvokeAsync>d__1f.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()
at Microsoft.Azure.Documents.GatewayStoreModel.d__2.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter1.GetResult() at Microsoft.Azure.Documents.Client.DocumentClient.<CreateAsync>d__2ea.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()
at Microsoft.Azure.Documents.Client.DocumentClient.d__84.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter1.GetResult() at Microsoft.Azure.Documents.BackoffRetryUtility1.<>c__DisplayClass2.<b__0>d__4.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter1.GetResult() at Microsoft.Azure.Documents.BackoffRetryUtility1.d__1b.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at Microsoft.Azure.Documents.BackoffRetryUtility1.<ExecuteRetry>d__1b.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()
at Microsoft.Azure.Documents.BackoffRetryUtility1.<ExecuteAsync>d__a.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()
at Microsoft.Azure.DocumentDBStudio.StoredProcedureNode.d__5.MoveNext() in C:\projects\DocumentDBStudio\DocumentDBStudio\Nodes\StoredProcedureNode.cs:line 70

Add ability for multiple operation tabs

It would be awesome to have the ability to have concurrent query/action windows as to not have to use notepad as a temporary clipboard. Something similar to SQL Server Management Studio tabs.

Thanks for all the hard work!

Long string JSON properties are not displayed in result view

One of the major problem I have when using DocumentDBStudio as a query playground is the fact that some properties are not shown in the GUI.

See
docdbstudio1

it is as if the property does not contain anything but if I look on fiddler this property is populated

docdbstudio2

Crash when running a simple query with where clause for partitionKey

  1. Open client
  2. Browse to a document collection
  3. Right click and choose query documents
  4. select * from c where c.partitionKey <> "somevalue" -- in my case some value is a guid
  5. Execute query
  6. Crash below

System.AccessViolationException was unhandled
Message: An unhandled exception of type 'System.AccessViolationException' occurred in Microsoft.Azure.Documents.Client.dll
Additional information: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.

UTF-8

This tool doesn't seem to support UTF.

Hide system properties has two problems

  1. Seems all underscore fields are hided, which is not right. It should only hide _ts, _etag, _self, _rid, _attachments etc.

  2. Press the button doesn't toggle the display, which give the feeling that is not working at all.

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.