Quandis Business Objects 4

QBO4 is intended to offer QBO functionality associated with data not stored in a QBO database. Examples include:
  • Create a workflow based on a row in an enterprise data warehouse
  • Upload attachments associated with a real estate listing hosted on Zillow

ASP.NET vNext notes


Targeting multiple .NET versions

The theory behind DNXCore50 is to maximize performance by only loading the DLLs that the developer wants. A gotcha discovered in one project centers on where to bind dependencies in project.json. When leveraging HttpClient in both dnx451 and dnxcore50, this does not work:

{
    "dependencies": {
        "qbo4.Core": ""
        "System.Net.Http": "4.0.0.0"
    },
    "frameworks": {
        "dnx451": {
            "frameworkAssemblies": {
                "System.Runtime": "4.0.10.0",
            }
        },
        "dnxcore50": {
            "dependencies": {
                "System.Runtime": "4.0.20.0",
            }
        }
    }
}

When specified in the root dependencies node, System.Net.Http is loaded as a vNext assembly.  This conflicts with dnxCore451, which should be loading it as a framework assembly.  The fix is to tell each framework to load the namespace independently:

{
    "dependencies": {
        "qbo4.Core": ""
    },
    "frameworks": {
        "dnx451": {
            "frameworkAssemblies": {
                "System.Runtime": "4.0.10.0",
                "System.Net.Http": "4.0.0.0"
            }
        },
        "dnxcore50": {
            "dependencies": {
                "System.Runtime": "4.0.20.0",
                "System.Net.Http": "4.0.0.0"
            }
        }
    }
}




Comments