Visual Studio - 编辑位于数据库中的源代码

时间:2009-10-12 17:32:47

标签: visual-studio integration couchdb

我正在为Apache CouchDB构建类似于Server Explorer的东西。必要的一件事是能够编辑CouchDB中的CouchDB视图定义,这些定义在CouchDB中是JavaScript函数。

如何欺骗Visual Studio使用我的对象来检索和保存JavaScript函数的内容,但仍然使用其余部分 - 我对编辑器本身感到满意,并且无意编写我自己的编辑/语言服务,后者将比该项目所要求的更大的努力

修改

经过多次挖掘后,我仍然陷入困境。以下是我所知道的:IVsUIShellOpenDocument接口提供了一个方法OpenStandardEditor,可用于打开标准的Visual Studio编辑器。作为参数之一,此方法将指针指向文档数据对象的IUnknown接口。该对象应该实现在MSDN上的许多地方描述的几个接口。

Visual Studio SDK还提供了文档数据对象VsTextBufferClass的“示例”实现。我可以创建这个类的实例,当我将实例的指针传递给OpenStandardEditor时,我可以看到我的编辑器,它似乎工作正常。

当我尝试实现我自己的类时,实现相同的接口(IVsTextBufferVsTextBufferIVsTextLinesOpenStandardEditor方法返回成功,但VS在电话中炸弹{ {1}}访问冲突。

我怀疑VsTextBufferClass还实现了一些其他接口,但不是用C#方式,而是用旧的COM方式。我只是不知道哪一个。

有什么想法?

1 个答案:

答案 0 :(得分:0)

如果你有一个程序可以将javascript导出到磁盘上的文件,然后在用Visual Studio编辑完成后将它们导回到数据库中,该怎么办?这可能是最简单的方法。