Excel-DNA / Excel-DNA/DeveloperTools

VS Extension Discussion

未关闭
#1 9 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
C#
星标
0
派生
2
PR 合并指标
30 天内没有已合并 PR

描述

This topic is for general discussion of the Visual Studio extension for Excel-DNA.
We can create individual issues for specific work items as these are more clearly defined.

My thoughts for the first iteration of the VS extension:
* The first iteration of the extension is mainly about project and item templates, and some related tools for setting up and managing an Excel-DNA add-in solution.
* We are building this for the Excel-DNA v1.1 generation, so this always targets .NET Framework. (There are some future plans for Excel-DNA to target .NET 5, and have a different model for loading the add-ins.)
* We want to support both C# and VB.NET (and possibly F# where this is easy, but it's not an initial priority).
* There are different solution and project layouts we should define and then make easy to build and configure. For example:
* Simplest add-in is just a Class Library that has the `ExcelDna.AddIn` NuGet package installed.
* A complicated solution might have:
* an implementation Class Library project which does not reference Excel-DNA at all, with the core code, and other references
* a Test project that does unit testing of the implementation library, and
* an add-in Class Library that references Excel-DNA and the implementation library, and adds the functions and add-in specific feature that are relevant to the Excel addin part of the project.
* possible other projects that also reference the implementation library, like a GUI front-end.
* There are different features that an Excel-DNA add-in project might have, and that we want to make easy to add. For example:
* Have a reference to the Excel PIA assemblies installed (perhaps with an option about the version).
* Runtime-registration of functions using the Excel-DNA Registration extensions - with some related features
* Support for a Ribbon extension, perhaps with ribbon definitions in a separate xml file that is embedded as a resource
* Support for one or more CTP, with some help in setting up the WinForms // WPF // WebView and maybe dealing with a CTP that is linked to a workbook.
* Documentation support through ExcelDnaDoc (which also needs the help compiler tools to be installed - I can't remember if the NuGet package does this automatically).
* Embedding of the IntelliSense library
* We might consider whether to interact with the .dna file that defines an add-in, for example can we help manage the list of `` tags to help with the packing.

General extension features:
* I'd like to understand the options for licensing of the extension, particularly how we link the extension to a back-end user id and authorization to use the extension. Does the VSIX model have any built-in support for licensing?
* I'd like to understand the options for building in some telemetry into the extension, so that we might get information about how many add-ins are created, and what aspects are used. This should be anonymous and optional to the user so they can opt out.

Future topics, not for the first iteration:
* Setting up an installer project (from the WiXInstaller) is not for the first iteration, but perhaps for future work.
* Improve debugging cycle through some unloading / reloading link to a 'live' Excel instance. There are some debugger implications to this too.
* A test framework for integration testing of add-ins.

贡献指南

这个仓库没有索引到贡献指南

调研方向

没有指定源文件、测试或入口点;请先检查 repository 结构,并将这次讨论拆分为具体且范围相互独立的工作项。一个有用的结果是定义一个首轮迭代功能,确定代码位置、验收标准以及一个专门的 issue,而不是直接实现这次宽泛的讨论。

由索引模型根据 Issue 内容生成。

评估

技术栈
csharp
领域
developer-experience, devtools, tooling
Issue 类型
功能
难度
5/5
预计耗时
一周以上
活跃度
停滞
描述清晰度
需要澄清
新手友好度
15/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。