.NET Implementation of the CloudDataObject (CDO) used by Progress OpenEdge.
Fetching latest commit…
Cannot retrieve the latest commit at this time.

README.md

NCDO

Copyright (c) 2017 - 2018 Robin Herbots Licensed under the MIT license (http://opensource.org/licenses/mit-license.php)

donate

The NCDO is a .NET implementation of the CDO Specification published by Progress Software Corporation. The NCDO is a free and open-source implementation that can be used in .NET.

Documentation

For more information see the Progress Data Objects Guide and Reference.

Usage

Reference the NCDO nuget package in your project.

In your application the usage is simular as in the documentation of JSDO.

  var pdSession = new CDOSession(new CDOSessionOptions() { ServiceUri = new Uri("http://<pas server url>")});
  pdSession.Login().Wait();
  pdSession.AddCatalog(new Uri("http://<catalog url>")).Wait();
            
  var cdo = new CDO("resource");
  var paramObj = new JsonObject
       {
          { "name", "name" },
       };
  
  var resp = cdo.Invoke("InvokeOperation", paramObj).Result;

Authentication

The Authentication model is specified in the CDOSessionOptions and passed in the constructor of a CDOSession.

Supported protocols:

  • anonymous
  • basic
  • bearer

Remarks

Any contributions (code, documentation) is also welcome.

Additions to api spec

  • added ICloudDataObject.Get

      /// <summary>
      ///     Searches for a record in a table referenced in CDO memory
      ///     and returns a reference to a dataset with all related data from the record if found. If no record
      ///     is found, it returns null.
      /// </summary>
      /// <returns></returns>
      Task<D> Get(Expression<Func<R, bool>> filter);