Tag: 包装器

将嵌套列表与逻辑结合使用

我正在使用无法序列化嵌套列表的游戏引擎,例如List<List> 。 我需要的是一个快速的解决方案,将多个列表存储在一个列表中。 我即将自己写这个,但我想知道是否已经存在任何解决方案。 是否有任何包装器可以将“虚拟”嵌套列表存储到一个大列表中,同时提供您期望从单独列表中获得的function?

最佳实践以及如何在客户端的C#包装器中支持不同版本的REST API

我编写了一个C#包装器来支持我们公司项目的REST API。 但是,这些API现在正在发生变化 – 就URL而言(可能会在URL中引入版本号)和它期望的数据对象并返回。 我想知道在我的c#wrapper中支持不同版本的REST API的最佳做法是什么。 我应该怎么做 – 在代码设计和类定义方面 – 以便一个包装器可以与不同版本的API无缝地工作 – 并且它也应该是可扩展的 – 以便将来可以轻松支持任何更新版本的API 。 我编写的c#包装器正在使用我们的Web服务API。 我已经在使用RestSharp客户端在c#wrapper中使用我们的Web服务API。

使用纯虚方法包装类

我有一个非托管的DLL,它包含一个只有纯虚方法的类(回调类型): class PAClient { public: __declspec(dllexport) virtual void SetCalculationStarted() = 0; __declspec(dllexport) virtual void SetCalculationStopped() = 0; } 现在我必须将这些函数调用发送到托管C#代码并决定使用接口。 这就是我所做的: public interface class IPAClientWrapper { void SetCalculationStarted(); void SetCalculationStopped(); }; private class PAClientWrapper : public PAClient { private: gcroot callBack; public: PAClientWrapper(IPAClientWrapper^ c) { callBack = c; } void SetCalculationStarted() { callBack->SetCalculationStarted(); } void SetCalculationStopped() […]

log4net包装器中的文件和行错误

我写了一个log4net包装器 public class Log4NetWrapper : ILogger { private readonly log4net.ILog logger; public Log4NetWrapper(string loggerName) { logger = log4net.LogManager.GetLogger(loggerName); } public void Debug(string message, params object[] values) { logger.DebugFormat(message, values); } public bool IsDebugEnabled {get { return logger.IsDebugEnabled; } } … } 问题是我记录的行和文件是包装器而不是消息的实际位置。

什么等于c#中的c ++ size_t

我在c ++中有一个结构: struct some_struct{ uchar* data; size_t size; } 我想在manged(c#)和native(c ++)之间传递它。 C#中size_t的等价物是什么? PS我需要一个完全匹配的大小,因为任何字节差异将导致包装时的巨大问题 编辑: 本机和manged代码都在我的完全控制之下(我可以编辑我想要的任何内容)

C#数据库包装器设计

我正在为C#设计一个数据库包装器。 以下是我的两个选项: 选项A: class DBWrapper:IDisposable { private SqlConnection sqlConn; public DBWrapper() { sqlConn = new SqlConnection(“my connection string”); sqlConn.Open(); } public DataTable RunQuery(string Sql) { implementation…… } public Dispose() { if(sqlConn != null) sqlConn.Close(); } } 选项B: class DBWrapper { public DBWrapper() { } public DataTable RunQuery(string Sql) { SqlConnection sqlConn = new SqlConnection(“my connection […]

C#.NET中的SQLite3

我正在尝试在C#.NET中使用SQLite3。 我已经google了一下,发现了一些不同的API。 我还检查了SQLite的网站包装。 我喜欢它们,但是想要编写我自己的包装器而不使用添加的依赖项。 我发现所有不需要添加依赖的包装器都不是免费的。 我想知道如何读取,执行和写入sqlite3数据库。 它是套接字连接(tcp?udp?等?)? 我试过在谷歌搜索这个答案,我得到的只是图书馆特定的答案。 :/ SQLite的网站文档也没什么帮助。 编辑:我在google搜索时也找到了一个COM接口 ,但该库是否具体? 谢谢! 🙂

如何在.NET应用程序中使用C ++项目?

我是一名常规.NET开发人员,旨在将C ++库集成到.NET项目中。 我有一些想法,但由于我一般都是C ++的新手,所以我不知道我正在尝试使用的技术的局限性。 C ++项目本质上是一个快速的声音渲染器,可以使用一堆不同的后处理技巧播放多轨音频文件。 所有这一切都很酷,但考虑到我想要集成一个简单的.NET WinForms应用程序,事情开始变得混乱。 首先,C ++项目没有.NET绑定或ActiveX / COM集成。 它是一个简单的’ol MS VC ++ 9项目。 如果我在我的.NET应用程序中使用该项目,我将不得不以某种方式与它进行交互 ,即。 创建类实例,设置属性,调用方法,编组进出数据等。 其次,它可以作为独立的Windows应用程序运行,并使用MS Windows API管理自己的Windows。 这很好,但不知怎的,我需要在后台运行 .NET VM,管理节目并运行我所有的C#代码。 我不编写C ++所以我需要坚持使用C#来围绕这个lib构建一个应用程序。 第三,无论我是否在与C ++ lib相同的进程中运行,我都需要一种方法来构建/接口/调试这两个独立的应用程序,就像它们是一个一样。 我没有C ++编程的背景,除了我为高性能数据操作编写了几个C ++ DLL。 所以,很多问题,不知道如何开始! 我可以完全编译这个lib并将其放入VC EXE,但是如何将我的.NET代码共同编译成它? 或者,如何将C ++代码编译到.NET EXE中,以便它在托管环境中运行? 请注意,它不是为此设计的,如果我尝试改变太多,可能会行为不端。 主要问题是与它接口 。 如何公开一些要从.NET访问的C ++类? 我确切地知道我需要哪些类,并且我只需要几十个类以及它们可以从.NET获得的相关方法/属性。 我不介意.NET中的手写包装类来帮助.NET VM理解来回传输的字节的类结构。 我希望我可以直接使用托管环境中的C ++对象,因此我的大多数代码都可以保留在.NET中。 即使我作为一个独立的应用程序运行它,我是否必须求助于套接字或与之通信? 这是绝对更糟糕的情况,我会做任何事情来避免这种情况。 任何帮助或指示都表示赞赏,我希望我能够完成自己的工作并完成我的任务,并且我的问题足够具体并且可以回答。 谢谢你的帮助! […]

自动将c ++ dll自动换行到c#

我想在ac#project中使用c ++库。 是否有任何包装工具可以自动导入所有类?

如何根据时间或百分比剪切/裁剪/修剪video,并将输出保存在不同的文件中

是否有任何教程或ac#库可以帮助我完成以下任务 选择要编辑的文件 要求用户选择剪切/裁剪/修剪方法: – 按时间或按百分比 按所选时间或百分比剪切/裁剪/修剪video(假设我希望将5分钟video缩小为4分钟video,或将video缩小80%) 按要求在所需路径中保存video 现在步骤1)和4)我已经实现但找不到一个好的c#库来完成3)和4) 我查找了ffmpeg库,但找不到一个好的C#包装器来完成这些要求 任何帮助将深表感谢 谢谢