小编Tob*_*bon的帖子

MEF vs Mono.AddIn

我正在开发一个.NET 3.5 C#桌面应用程序.它应该可以通过插件扩展.

是否有任何文章讨论MEF和Mono.AddIn之间的差异,以帮助我做出明智的决定?

或者更好的是你有这两个框架的经验并可以评论它们?

谢谢,帕特里克

.net plugins add-in mef mono.addins

14
推荐指数
2
解决办法
3207
查看次数

Visual Studio找出分配给热键的命令

我已经安装了一个重新定义一些热键的VisualStudio插件,我需要回到Visual Studio的标准热键中.我知道在工具 - >选项 - >环境 - >键盘下我可以重新定义热键,我做到了.问题是,现在似乎我的热键Ctrl-E,C有两个命令关联,插件一个和标准一个.当我按下那个组合时,visual studio运行插件命令而不是标准命令.

问题是我不知道插件命令名称,所以除非我通过所有命令查看相关的热键,否则我无法取消关联.有没有办法发现与特定热键关联的命令?

plugins hotkeys visual-studio-2010 visual-studio

13
推荐指数
2
解决办法
1135
查看次数

使用SAMLResponse令牌

基于SAML sp的身份验证具有以下简短的工作流程

  • 用户希望在sp访问应用程序.
  • sp将SAMLRequest令牌发送到idp.
  • idp使用它并生成SAMLResponse令牌.
  • idp将此SAMLResponse令牌发送到sp给出的AC-URL.

我的问题是sp如何使用此SAMLResponse令牌.逻辑是什么?如果我能得到一些JAVA代码帮助它将是有益的.

java authentication saml opensaml saml-2.0

11
推荐指数
2
解决办法
2万
查看次数

喜欢使用参数的npgsql语句

我有一个postgresql数据库,我想查询表"位置",以检索与用户输入的名称匹配的所有位置的名称.列名是"LocationName".我正在使用带有C#的ASP.net.

NpgsqlConnection con = new NpgsqlConnection(ConfigurationManager.ConnectionStrings["ConnString"].ToString());

NpgsqlCommand cmd = new NpgsqlCommand("Select * from \"Locations\" where \"LocationName\" LIKE \"%@loc_name%\"", con);

cmd.Parameters.AddWithValue("@loc_name", Location_Name);

NpgsqlDataReader reader = cmd.ExecuteReader();
Run Code Online (Sandbox Code Playgroud)

我得到这个例外:

Npgsql.NpgsqlException: ERROR: 42703: column "%((E'My place'))%" does not exist
Run Code Online (Sandbox Code Playgroud)

我已经尝试不使用%运行查询,但它不起作用.我也试过使用下面给出的+和&,但是这也不起作用:

string query = "Select \"LocationName\" from \"Locations\" where \"LocationName\" LIKE '%'+ :loc_name +'%'";
Run Code Online (Sandbox Code Playgroud)

使用上面的行,我得到这个例外:

Npgsql.NpgsqlException: ERROR: 42725: operator is not unique: unknown + unknown
Run Code Online (Sandbox Code Playgroud)

c# asp.net npgsql

9
推荐指数
1
解决办法
1万
查看次数

为什么Resharper想要骆驼案也是私人方法?

有没有办法告诉Resharper方法应该有不同的命名约定,具体取决于访问修饰符,例如这里建议的?我的意思是例如:

私有方法lowerCamelCase

公共方法UpperCamelCase

等等...

resharper naming-conventions visual-studio

7
推荐指数
1
解决办法
1567
查看次数

构建AutoCAD Lisp文件的自动化

我有一个庞大的LISP项目,我已经制作了一个prv文件,允许将VLIDE这个项目编译成一个vlx文件(它也编译fas文件).问题是无法从autocad外部或从命令提示符编译项目,因此我无法vlx使用脚本自动化构建.

问题是:有没有办法做到这一点?我可以fas-vlx从autocad外部编译吗?或者我可以启动autocad给出编译prv然后关闭autocad 的脚本吗?

automation compilation autocad autolisp

6
推荐指数
1
解决办法
1740
查看次数

CAD插入块,鼠标下有缩略图

我需要通过 C# 插件将外部 DWG 插入到 AutoCAD 绘图中。我需要向用户“询问”插入块的插入点和旋转。到目前为止,我一直使用一个 lisp 函数来调用命令“._-insert”,该函数会给出鼠标下的块的缩略图,允许用户单击绘图以设置插入点,并从该点开始用户再单击一次即可设置旋转。现在我想避免使用 Lisp 或使用 AutoCAD 的低级 API,因为我需要一个可以在各种 CAD 环境上运行的解决方案。我发现的是这样的:

public static void InsertDwg(string dwgName)
    {
        CADAPI.ApplicationServices.Document doc = CADAPI.ApplicationServices.Application.DocumentManager.MdiActiveDocument;
        CADDB.Database db = doc.Database;
        CADAPI.EditorInput.Editor ed = doc.Editor;
        CADDB.ObjectId ObjId;
        using (CADDB.Transaction trx = db.TransactionManager.StartTransaction())
        {
            CADDB.BlockTable bt = db.BlockTableId.GetObject(CADDB.OpenMode.ForRead) as CADDB.BlockTable;
            CADDB.BlockTableRecord btrMs = bt[CADDB.BlockTableRecord.ModelSpace].GetObject(CADDB.OpenMode.ForWrite) as CADDB.BlockTableRecord;
            using (CADDB.Database dbInsert = new CADDB.Database(false, true))
            {
                dbInsert.ReadDwgFile(dwgName, CADDB.FileOpenMode.OpenForReadAndAllShare, true, string.Empty);
                ObjId = db.Insert(Path.GetFileNameWithoutExtension(dwgName), dbInsert, true);
            }
            CADAPI.EditorInput.PromptPointOptions ppo = new CADAPI.EditorInput.PromptPointOptions("\nInsertion Point");
            CADAPI.EditorInput.PromptAngleOptions ppa …
Run Code Online (Sandbox Code Playgroud)

.net c# insert thumbnails autocad

5
推荐指数
1
解决办法
2693
查看次数

Mono.Addin实现不检索插件

我正在使用Mono.Addins框架,C#和visual studio 2010编写一个可扩展的应用程序.

我的应用程序的结构如下:

PROJECT1:

namespace Plugins
{
    [TypeExtensionPoint]
    public interface IPlugin<InitParamsType>
    {
        void Refresh();

        string PlugInName { get; }

        void Initialize(InitParamsType parameters);
    }

    [TypeExtensionPoint]
    public interface IOrganizerPlugin : IPlugin<string>
    {
        bool AllowsToEditBrandCode { get; }

        UserControl GetUI();
    }

    public interface IPluginHost<PluginSpecalizedType>
    {
        void EmbedPlugin(PluginSpecalizedType plugin);
    }
}
Run Code Online (Sandbox Code Playgroud)

项目2(参考项目1):

    [assembly: AddinRoot("App.Organizer", "1.0")]
namespace App.Organizer
{
    public partial class frm_Supplier_Managed : Form, IPluginHost<IOrganizerPlugin>
        {

        public frm_Supplier_Managed()
        {
                 AddinManager.Initialize();
                AddinManager.Registry.Update(null);

                foreach (IOrganizerPlugin Addin in AddinManager.GetExtensionObjects(typeof(IOrganizerPlugin)))
                {
                    EmbedPlugin(Addin);
                }
         }


        public void EmbedPlugin(IOrganizerPlugin …
Run Code Online (Sandbox Code Playgroud)

c# plugins mono.addins

3
推荐指数
1
解决办法
416
查看次数

删除字符串中除最后一个字符外的字符

我正在尝试删除字符 '.' 来自除最后一次出现之外的字符串;例如字符串

12.34.56.78
Run Code Online (Sandbox Code Playgroud)

应该成为

123456.78
Run Code Online (Sandbox Code Playgroud)

我正在使用这个循环:

while (value != null && value.Count(c => c == '.') > 1)
 {
   value = value.Substring(0, value.IndexOf('.')) + value.Substring(value.IndexOf('.') + 1);
 }
Run Code Online (Sandbox Code Playgroud)

我想知道是否有更简洁的方法(也许使用 linq?)来做到这一点而无需显式循环?

(我知道有一个非常相似的问题,但是是关于 perl 的,事情完全不同)

c# linq string optimization

2
推荐指数
2
解决办法
2048
查看次数

在不同的语言操作系统中,类型的字段是否相同

我正在创建一个支持多语言操作系统的应用程序.在应用程序的一个地方,我使用以下代码行.

Type t = typeof(System.Windows.Forms.NotifyIcon);
BindingFlags hidden = BindingFlags.NonPublic | BindingFlags.Instance;
t.GetField("text", hidden).SetValue(notifyIcon, notificationToolTip);
Run Code Online (Sandbox Code Playgroud)

它是否可以在不同的语言操作系统上顺利运行,或者我必须更改不同语言的必填字段.例如,对于法语操作系统,我必须进行以下更改.

t.GetField("texte",hidden),SetValue(notifyIcon,notificationToopTip);
Run Code Online (Sandbox Code Playgroud)

c# field notifyicon

0
推荐指数
1
解决办法
84
查看次数