Tag: C#的

高效的数据表组

我想在DataTable上执行一个聚合查询来创build另一个DataTable。 我无法改变用于创build初始DataTable的SQL。 原始DataTable :(一切都是一个int) TeamID | MemberID ——-|———– 1 | 1 1 | 2 1 | 3 2 | 4 2 | 5 预期结果: TeamID | MemberIDCount ——-|————– 1 | 3 2 | 2 如果是SQL,我可以做 Select TeamID, Count(*) From Table Group By TeamID 但在我的应用程序中,我知道如何处理这个问题的唯一方法就是这样的: Dictionary<int,int> d = new Dictionary<int,int>(); foreach (DataRow dr in dt.Rows) { […]

在ASP.NET中使用静态variables而不是应用程序状态

我在飞机上使用静态variables,而不是ASP.NET中的应用程序状态,我想知道这是否是正确的方法: [Global.asax.cs] … public class Global : System.Web.HttpApplication { void Application_Start(object sender, EventArgs e) { // Code that runs on application startup } … private static Dictionary<string, object> cacheItems = new Dictionary<string, object>(); private static object locker = new object(); public static Dictionary<string, object> CacheItems { get { lock (locker) { return cacheItems; } } […]

ANSI C或ISO C是否指定-5%10应该是什么?

我似乎记得,当模运算符的操作数是负数(只是它应该是一致的)时,ANSI C没有指定应该返回什么值。 它是后来指定,还是总是指定,我记得不正确?

运营商的string

我需要评估在C#中作为string呈现给我的mathexpression式。 例如noddy,但得到了作为expression式的string。 我需要评估然后填充一个int。 在C#中没有Eval()和其他langugaes一样 String myString = "3*4"; 编辑: 我在VS2008上 试过了Microsoft.JScript。 =它的弃用方法(但仍然符合 – 警告) 然而,我有doens的Microsoft.JScript DLL工作 公共对象InvokeMember(string名称,BindingFlags invokeAttr,活页夹活页夹,对象目标,对象[] args); 抱怨说有一个失踪的“;” 去搞清楚… 编辑2 解决scheme – 是codeDom之一 – 它的工作,因为没有安全问题 – 只有我将永远运行的代码。 非常感谢答复… 而新龙书的链接真棒 编辑3 马特dataTable.Compute()也可以 – 更好的安全意识。 (注明参数检查)

numpy.float128的内部精度是多less?

numpy.float128映射到内部有什么精度? 是__float128还是长双? (或其他完全!?) 一个潜在的问题,如果有人知道:在C中安全__float128一个(16字节)长的双重,只是在精度上的损失? (这是为了与长时间运行的C库进行交互)。 编辑:为了回应评论,平台是“Linux-3.0.0-14-generic-x86_64-with-Ubuntu-11.10-oneiric”。 现在,如果numpy.float128依赖于平台具有不同的精度,这对我来说也是有用的知识! 只是要清楚,这是我感兴趣的精度 ,而不是元素的大小。

负数在C中的表示?

C代表负整数? 是通过补码表示还是通过使用MSB(最高有效位)? hex中的-1是ffffffff 。 所以请为我澄清这一点。

如何渲染一个Razor视图到ASP.NET MVC 3中的string?

我一直在search网站,但我能find的所有例子都是关于如何渲染部分控件.ascx ,或者依赖于控制器上下文。 我想要一个方法,使我能够提供视图和模型的相对path,并使用该模型将该视图渲染为string: string result = Utility.RenderViewToString("~/Views/My/Profile.cshtml", model); 我能find的所有例子都是针对较老版本的MVC,或者根本就没有做我需要做的事情。

如何在C#中调整多维(2D)数组?

我尝试了以下,但它只是返回一个搞砸的数组。 T[,] ResizeArray<T>(T[,] original, int rows, int cols) { var newArray = new T[rows,cols]; Array.Copy(original, newArray, original.Length); return newArray; }

c ++模板部分专业化的成员函数

我是新来的模板,所以也许这是一个微不足道的事情,但我不能得到它的工作。 我试图获得类成员函数的部分专业化。 最短的代码是: template <typename T, int nValue> class Object{ private: T m_t; Object(); public: Object(T t): m_t(t) {} T Get() { return m_t; } Object& Deform(){ m_t*=nValue; return *this; } }; template <typename T> Object<T,0>& Object<T,0>::Deform(){ this->m_t = -1; return *this; } int main(){ Object<int,7> nObj(1); nObj.Deform(); std::cout<<nObj.Get(); } 我尝试了非成员函数,这很好。 什么也行得通是一个成员函数的完全专业化。 但是,每当我尝试与部分规格。 一个成员函数的我得到的forms的错误: PartialSpecification_MemberFu.cpp(17): […]

销毁,然后使用相同的variables构造新的对象

有时从头开始很好。 在C ++中,我可以使用下面这个简单的操作: { T x(31, Blue, false); x.~T(); // enough with the old x ::new (&x) T(22, Brown, true); // in with the new! // … } 在范围的末尾,析构函数会再次运行,一切都很顺利。 (让我们也说T有点特别,不喜欢被分配,更不用说交换了。)但是,有些东西告诉我,并不总是没有风险去摧毁一切,然后再试一次。 这种方法有没有可能发生?