Tag: c ++

具有自定义格式的C#Generic DateTime.ToString()

使用时: DateTime.ToString().Contains(“2016”) entity framework产生: CAST(DateValue AS nvarchar(max)) LIKE ‘%2016%’ 这使用默认的日期格式“mon dd yyyy hh:miAM(或PM)” 我想用“yyyy-mm-dd hh:mi:ss(24h)”,这可以通过以下方式获得: CONVERT(VARCHAR(max), DateValue, 20) LIKE ‘%2016%’ 我需要帮助将这种格式实现到现有的generics方法。 static Expression<Func> Expr(Expression<Func> source) { return source; } static MethodInfo GetMethod(this LambdaExpression source) { return ((MethodCallExpression)source.Body).Method; } static readonly MethodInfo Object_ToString = Expr((object x) => x.ToString()).GetMethod(); static readonly MethodInfo String_Contains = Expr((string x) => […]

在输入按下时触发ASP.NET TextBox事件

当用户按Enter键时,如何触发ASP.NET单击事件。 这是我现在做的,但它不起作用: function KeyDownHandler(event) { if (event.keyCode == 13) { __doPostBack(”, ‘OnClick’); isClicked = true; } }

C#中的条件运算符和返回类型

可能重复: 为什么null需要显式类型转换? 可空类型和三元运算符。 为什么这不起作用? 试图执行以下操作: sqlCmd.Parameters.Add(“@DateCreated”, System.Data.SqlDbType.DateTime).Value = myObject.DateCreated == DateTime.MinValue ? DBNull.Value : myObject.DateCreated; 我收到此错误: 无法确定条件表达式的类型,因为’System.DBNull’和’System.DateTime’之间没有隐式转换 我很明白这个错误,但为什么类型甚至是什么,因为Parameters.Value属于对象类型? 有没有办法完成我想要做的事情?

Visual Studio 2013中的OpenCover测试工具用法

我正在尝试将OpenCover用于使用C#编写的计算器应用程序。 我在Visual Studio 2013中打开它,并使用包管理器控制台安装了OpenCover和Report Generation包。 我无法理解继续的其他命令。 具体来说, -target是什么意思? 我无法理解继续下去的一步。

如何将指针从C#传递到DLL中的本机函数?

这是我在DLL中的函数的签名: int __stdcall myFun( void * const context, const char * const pszFileName, const unsigned int buffSize, void * const pWaveFormatex ); 所有参数均为[in]。 用户应该通过最后一个参数将指针传递给WAVEFORMATEX结构。 返回后,它将被填补。 所有这些在C ++中都很有效。 现在,我正在尝试使用C#中的相同DLL,但它根本不起作用。 问题出在最后一个参数中。 由于我根本不了解C#,我想问一下这是否可行。 如果是,我会很感激一个例子。 我最后一次尝试是这样的: [StructLayout(LayoutKind.Sequential, Pack = 1)] public struct WAVEFORMATEX { public ushort wFormatTag; public ushort nChannels; public uint nSamplesPerSec; public uint nAvgBytesPerSec; public ushort nBlockAlign; […]

从HttpClient.GetStringAsync读取响应

我正在使用Windows Phone / Store应用程序的新运行时使用Windows Universal应用程序。 我正在使用以下代码向服务器发送请求,并期望返回HTML响应。 但是,当我返回字符串并在UI中显示它时,它只是说: “System.Threading.Tasks.Task’1 [System.String]” 它没有向我显示应该返回的实际HTML / XML。 当我在普通的Windows窗体应用程序中使用相同的URL时,它会返回我期望的数据,但我在那里使用的代码是不同的,因为它是Win32而不是WinRT /这个新的RT。 这是我的代码。 我怀疑我没有以正确的格式返回数据,但我不知道我应该做什么。 var url = new Uri(“http://www.thewebsitehere.com/callingstuff/calltotheserveretc”); var httpClient = new HttpClient(); try { var result = await httpClient.GetStringAsync(url); string checkResult = result.ToString(); httpClient.Dispose(); return checkResult; } catch (Exception ex) { string checkResult = “Error ” + ex.ToString(); httpClient.Dispose(); return checkResult; […]

使用c#从服务名称获取进程ID

是否有可能在不使用c#中的管理对象的情况下从服务名称获取进程ID? 当WMI服务处于错误状态时,管理对象不起作用。

PInvoke:用C ++分配内存并在C#中释放它

我们正在使用PInvoke在C#和C ++之间进行交互。 我有一个如下的互操作结构,另一边有相同的布局C ++结构。 [StructLayout(LayoutKind.Sequential)] public struct MeshDataStruct : IDisposable { public MeshDataStruct(double[] vertices, int[] triangles , int[] surfaces) { _vertex_count = vertices.Length / 3; _vertices = Marshal.AllocHGlobal(_vertex_count*3*sizeof (double)); Marshal.Copy(vertices, 0, _vertices, _vertex_count); } // .. extract data methods to double[] etc. private IntPtr _vertices; private int _vertex_count; public void Dispose() { if (_vertices != […]

哪种方法最好? AutoMapper反对隐式(C#参考)

Automapper是一种匹配类型的方法,理想情况下,当您想要映射模型及其视图模型时。 但这与C#中隐含的方法不一样吗? (假设两个模型具有相同的属性但名称不同,在这种情况下,您需要在AutoMapper中指定哪个模型之间链接) 我们有autommaper public class Employee { public string Name { get; set; } public string Email { get; set; } } public class EmployeeViewItem { public string Name { get; set; } public string Email { get; set; } } 通常我们这样做: Employee employee = new Employee { Name = “John SMith”, Email = […]

NUnit:如何在C#中使用“ref”参数测试私有方法

我有一个私有方法,如下所示: int void SomeMethod(ref string theStr) { // Some Implementation } 如何为这种方法编写unit testing用例。