Help needed creating a workbook integration (the nuget packaging part)

I'm trying to create a workbook integration, and all is well and good until I get to the "shipping your integration" part of this tutorial: Getting Started with the Xamarin Workbooks SDK. One difference is that I'm using a netstandard2.0 library instead of a PCL. I have created nuget packages before, but here are my issues:

1) It says to include the dll like this:

<files>
  <file src="MyIntegration\bin\Release\netstandard2.0\MyIntegration.dll" target="xamarin.interactive" />
</files>

but then it gives me an error like the following:

WARNING: 1 issue(s) found with package 'MyIntegration'.
Issue: Assembly outside lib folder.
Description: The assembly 'xamarin.interactive\MyIntegration.dll' is not inside the 'lib' folder and hence it won't be added as reference when the package is installed into a project.
Solution: Move it into the 'lib' folder if it should be referenced.

The nuget packing doesn't complain when I do something like this:

<file src="MyIntegration\bin\Release\netstandard2.0\MyIntegration.dll" target="lib\net20\MyIntegration.dll" />
<file src="MyIntegration\bin\Release\netstandard2.0\MyIntegration.deps.json" target="lib\net20\MyIntegration.deps.json" />

But that can't be right because it doesn't refer to the xamarin.interactive folder at all. Which brings me to the second issue.

2) When the tutorial says "The most important part is that all of the files for your integration must be in a xamarin.interactive directory at the root of the package," which files, exactly is it referring to? Copy the .cs files? The whole project? The dll? (I know I'll feel dumb when someone tells me the answer)


And I'll go ahead and add some background context. After I manage to get the tutorial working, I'd like to move on to something more interesting. I don't know if observables are fully supported yet, but I'm inspired to try to accomplish a .Net version of the following Rx visualization for JavaScript . Are simple animations like that even supported in workbooks? I know images are supported.

This input by Abok gave me hopes, as well: https://forums.xamarin.com/discussion/104665/asynchronous-output#latest

but I noticed evaluation doesn't have a subscribe method like in Abok's rough code snippets (because it was just an idea at the time).

    if (evaluation.Result is IObservable)
        evaluation.Subscribe (value => {
            // the ID from the evaluation would tie the out-of-band result to the cell
            agent.PublishEvaluationResult (evaluation.Id, value);
        });

And it looks like this file is related to Abok's brainstorming: https://github.com/Microsoft/workbooks/blob/master/Samples/CompilationIntegration/AgentIntegration.cs

Anyways, still trying to figure this stuff out a little at a time. I'd be grateful for anyone willing to provide some insight. Thanks in advance.

Best Answer

Answers

  • ColtBaumanColtBauman USMember ✭✭

    Thanks a lot for you help, Sandy. I was able to get it working.

    I'll move the topic of observables to a new thread.

Sign In or Register to comment.