Are there any legal requirements when deploying code with the youtube api? - google-api

We are currently completing a .Net application that uses the YouTube API. The API DLLs are loaded from NuGet packages, all working fine. To be legally on the safe side, do we need to include any further files in our installer, e.g. an API readme or a term license document?
The NuGet packages only provide the DLLs.
Thanks

The Google .net client library is covered under the Apache licence to my knowledge there is nothing that you need to include in your project to use it.

Related

Microsoft.Bot.Connector.DirectLine Support in .NET MAUI

I am converting my Xamarin Forms Application to .NET MAUI.
In existing app we have used Microsoft.Bot.Connector.DirectLine(3.0.2) for using the Bot Framework Direct Line REST API.
Is Microsoft.Bot.Connector.DirectLine package supported in .net MAUI?
In the Microsoft.Bot.Connector.DirectLine Nuget Link I don't see the net6.0 as the compatible target framework.
If it's not supported is there any alternative package?
Any help is appreciated!
This is an old package which hasn't been updated since 2017. It likely doesn't support .NET 6.0 and probably won't be updated to support it.
The good news is that you do not need this package to communicate with a bot over Direct Line. You can use .NET Standard Library objects (such as HttpClient) to communicate with Direct Line as you would any other REST API. There may be other libraries and frameworks you could use as well.
See the Direct Line 3.0 Documentation to see how to use the API.

What is the correct way to access Microsoft Dynamics 365 data on the cloud? SDK vs Web Api

I'm .NET Web Developer and new to Microsoft's CRM, so bear with me. I'm trying to find the correct way to connect to Microsoft Dynamics 365 and retrieve some PDF files. I need to know which is the correct way to do so. I have some questions of some topics found Googling around that don't make sense to me.
Accessing through the SDK
I have found this Microsoft documentation which explains the SDK. However there is a NOTE that says that this has changed with the 2016 update, and Googling more around, it seems to be that the SDK it's not used anymore. I am wrong?
Accessing data using Web API
There's yet another Microsoft documentation that tries to explain the way to connect through a Web Api, however from the start, it says: "This section contains reference documentation of the types, functions, and actions that constitute the Web API for Microsoft Dataverse and Dynamics 365 Customer Engagement (on-premises)".
That "On-Premises" comment bothers me. I don't want to learn something that doesn't work for me. Why the web api seems to work only on premise? Why not Dynamics in the cloud?
And for what you can see, I'm utterly confused as to how in the world I can access data to retrieve a file programmatically through C# code from Microsoft Dynamics 365 cloud based.
Please, if you can point me in the right direction, I will really appreciate it.
Thank you!
If your language is C# you can use the SDK provided by Microsoft, it works with the Online (cloud) version.
If you are using .NET Framework you can use this NuGet package:
https://www.nuget.org/packages/Microsoft.CrmSdk.XrmTooling.CoreAssembly/
If you are using .NET Core/.NET 5.0+ you can use this NuGet package (but in public preview):
https://www.nuget.org/packages/Microsoft.PowerPlatform.Dataverse.Client/
Some details about these packages here: https://www.crmanswers.net/2021/05/microsoftpowerplatformdataverseclient.html
Adding to Guido's excellent information here are a few more considerations:
Plugins and custom workflows are custom .NET assemblies where you would use the SDK. They currently only support the full .NET Framework.
To call into the system from a JavaScript library on a form (a.k.a. Client-side scripting), you'd use the WebAPI.
For console apps, web apps, and other external code, you can choose between the SDK and WebAPI. (And as Guido points out, the .NET Core version of the SDK is in preview).
When using the SDK there are two possible coding approaches: Early Bound and Late Bound.
With early bound, you generate proxy classes for DataVerse tables. The classes have properties for each column/attribute, which enables intellisense.
With late bound, you use the string names of tables and attributes.
This article has more info.
Tools for generating early bound classes include Microsoft's CrmSvcUtil.exe, Daryl LaBar's Early Bound Generator in the XrmToolbox,
and the commercial Visual Studio add-on for DataVerse XrmToolkit.
If you're going the WebAPI route, David Yack's API Helper might interest you.

Xamarin Loading & Updating .dlls from Server

I wonder if it's ok on the Xamarin platform on both IOS/Android to download .NET .dll from my own server and load it and execute the code inside.
Is it technically possible or are there any special code signing requirements related to IOS/Android?
Is there a Terms of Service policy that Apple and Google wouldn't allow this?

If installing a nuget in a class library do I also have to add it to the client app?

I have a class library such as .NET Standard 2.0 that uses a nuget. I have multiple clients that use this class library. Will the client automatically get the required files from the class library references or do I need to install the same nugets used in class libraries in client apps that consume the library?
It depends on the nuget, generally in nuget's which are purely .net based won't be needed to be installed on the platform projects, for example, Json.net.
But let's say that you are using a nuget which interacts with the native api, under the hood, like Rg.Plugins.Popup, which lets you create UI basically which is not entirely only .NET thing, so it will be required to be installed on all the platforms.
There's really not a way that you can differentiate between them, but if you check the nuget's Github page, they would generally mention whether you need to install it on platform projects or not.
But you can assume that something which affects the UI would be needed to be installed on the platform project, whereas something which does nothing but pure logical processing would only be required to be installed to your .NET standard library.

Winmd build for a SDK using SQLite as a dependent library

I have a SDK written in C# targeting Win10 UWP apps.
It uses SQLite and works perfectly on C# client apps.
But can a C++/javascript app use my SDK with the SQLite dependency?
A winmd (windows runtime component build) would be required in case the SDK has to be UWP compatible since a UWP app can be in C#/C++/javascript/Visual basic.
I have posted this in msdn forums and they say i would need a windows runtime component for all the 3rd party dependencies for it to work.
Have already tried wrapper projects and wrapper winmd build, it does not work.
I am unable to find any winmd build for SQLite library.
Please advise on what can be done here.
Any help is really appreciated.
But can a C++/javascript app use my SDK with the SQLite dependency?
Yes, as in msdn forums said, you will need to wrapper in WinRT component universal apps.
Have already tried wrapper projects and wrapper winmd build, it does not work.
I don't know what blocks you, but you can refer to Writing a SQLite wrapper component for universal Windows apps, there are detailed steps you will need to follow, and samples you may have a look.
I tried various approaches to make this project work and found some success in the following:
Following is the project structure I made along with dependencies :
Client Application (in C++):
Wrapper winmd library.
Wrapper winmd library (in C#): (I generate a winmd component from this project)
My SDK project
My SDK project (in C#):
SQLite Net.
SQLite Net Async.
Newtonsoft JSON.
When I build the client application, I get the wrapperlibrary.winmd file but I dont get the corresponding dlls from the 3rd party dependencies in the output directory (SQLite and Newtonsoft). So i manually copied the required dlls to the output directory of the C++ application. Now it seems to work correctly, I can verify correct usage of the 3rd party libraries and my C# code. Presently I am just trying to make the setup work as a poc and worry about the packaging later.
The issue I now face is that my SDK also has some UI elements, so essentially compiled .xbf files for the "XAML" I have.
I have asked this question in another thread to not go off main topic here.

Resources