我是Visual Studio的新手,我在使用Visual Studio 2008启动项目时遇到了一些麻烦.我正在尝试使用MAPI,当我去构建项目时,我收到这样的错误消息:
"未解析的外部符号_MAPIUninitialize @ 0在函数_main中引用"
我知道我需要链接到MAPI32.lib,但到目前为止我找到的指南已经指示进入"Visual Studio设置链接选项卡"并将其添加到那里(显然是 - 从较旧版本的Visual Studio).我在VS 2008的项目属性链接器或C/C++部分找不到类似的东西.
我在哪里需要告诉Visual Studio使用该库?
谢谢
我有SQL语句(SQL Server)
SELECT
COUNT(ActionName) AS pageCount
FROM tbl_22_Benchmark
WHERE DATEPART(dw,CreationDate)>1 AND DATEPART(dw,CreationDate)<7
GROUP BY
dateadd(dd,0, datediff(dd,0,CreationDate))
产生输出
pageCount
27
19
59
现在我想用SQL获得所有这些数字的平均值.显然嵌套的聚合函数就像
(AVG(COUNT(PAGECOUNT)))
是不允许的,并使用子查询
SELECT AVG(pageCount) FROM
(
SELECT
COUNT(ActionName) AS pageCount
FROM tbl_22_Benchmark
WHERE DATEPART(dw,CreationDate)>1 AND DATEPART(dw,CreationDate)<7
GROUP BY
dateadd(dd,0, datediff(dd,0,CreationDate))
)
得到我只是一个错误消息')'附近的语法不正确.
如何获得pageCount行的平均值?
C#中的以下代码不起作用:
int iValue = 0;
double dValue = 0.0;
bool isEqual = iValue.Equals(dValue);
Run Code Online (Sandbox Code Playgroud)
那么,问题是:比较Double和Int的最佳方法是什么?
在.NET项目中应该有哪些帮助类的最佳实践是什么?引用与业务层事物分开的类,但是演示和应用程序的东西,如appSetting配置管理器和其他有时是模块特定或有时在整个应用程序中使用的代码.
请原谅noob问题,因为我不熟悉将数据与我的应用程序集成.我试图在网上找到答案,但还没有.
我有一个应用程序,我在VS2010上用C#开发,需要从数据库输入/输出数据.我试图弄清楚它在设置数据源时是否需要使用它的DataSet或实体数据模型.我的理解是,EDM允许我将数据库中的表/字段视为对象,但不知何故,我看起来也可以使用DataSet.
一些消息来源解释了DataSet创建了数据库的缓存副本,然后可以对其进行操作.
基本上我的问题是我应该使用哪个以及哪个(dis)的优点是什么?
每次实例化我的类的新实例时,我的项目都需要设置一个新端口.
在Node.js中我如何找到一个可在我的新套接字服务器中设置的免费TCP端口?或者检查我的指定端口是否已被使用.
我在一个IIS应用程序中运行了一堆.NET Webservices.这些Web服务由另一个IIS应用程序(前端)使用.第一个电话很慢,大概5到10秒.在那之后它只是几毫秒.第一个电话被认为是性能问题.
我们尝试过调用所有这些Web服务的应用程序,但这显然无法解决任何问题.因此,问题不在于默认的应用程序回收.我创建了一个应用程序,它只是多次初始化服务并测量创建一个实例所需的时间.在运行此应用程序之前,我确保启动/回收我的Web服务应用程序,然后运行该应用程序.第一次初始化需要2到4秒,所有其他的只需几毫秒.
另一个想法是我们在前端应用程序中创建一个页面,启动所有的Web服务,并在任何用户进入之前调用此页面.我不认为这是一个优雅的解决方案,我还能尝试什么?
我有一个包含此方法的Web服务:
[WebMethod]
public static List<string> GetFileListOnWebServer()
{
DirectoryInfo dInfo = new DirectoryInfo(HostingEnvironment.MapPath("~/UploadedFiles/"));
FileInfo[] fInfo = dInfo.GetFiles("*.*", SearchOption.TopDirectoryOnly);
List<string> listFilenames = new List<string>(fInfo.Length);
for(int i = 0; i < fInfo.Length; i++)
{
listFilenames.Add(fInfo[i].Name);
}
return listFilenames;
}
Run Code Online (Sandbox Code Playgroud)
这将返回文件夹中的文件名列表.当我调试应用程序时,它工作正常.
我想要做的是从winform应用程序调用这个webservice方法.我添加了对web服务的.dll的引用,这就是我调用上面方法的方法:
private void Form1_Load(object sender, EventArgs e)
{
List<string> files = TestUploaderWebService.Service1.GetFileListOnWebServer();
}
Run Code Online (Sandbox Code Playgroud)
上面的代码不起作用 - 当它进入方法时,Web应用程序的路径为null,HostingEnvironment类的许多属性也为null.在尝试从另一个winform应用程序调用Web服务方法时,我的错误在哪里?
请注意,Web服务是在Visual Web Developer Express中创建的,而win C#表示的是winform; 这就是我必须在winform应用程序中添加Web服务dll作为参考的原因.我没有完整的Visual Studio,这可以让我在两个项目中都有一个解决方案.
我是网络服务的新手.
PS - 我喜欢这里的文本格式化:)
假设我有一个填充了布尔值的数组,我想知道有多少元素是真的.
private bool[] testArray = new bool[10] { true, false, true, true, false, true, true, true, false, false };
int CalculateValues(bool val)
{
return ???
}
Run Code Online (Sandbox Code Playgroud)
如果val为真,则CalculateValues应返回6,如果val为false,则返回4.
明显的解决方案:
int CalculateValues(bool val)
{
int count = 0;
for(int i = 0; i<testArray.Length;i++)
{
if(testArray[i] == val)
count++;
}
return count;
}
Run Code Online (Sandbox Code Playgroud)
有"优雅"的解决方案吗?
我正在尝试将现有的ASP.NET Web API项目(当前在IIS中托管)转换为可以使用SelfHost框架的项目.我对实际细节有点模糊,但我知道我可以在控制台窗口中运行自主服务器,然后在它上面运行服务.我遇到的问题是我的项目是MVC项目而不是控制台项目.我对控制台/ Windows应用程序的熟悉程度有限,因为我通常使用要在IIS中托管的项目.
我有点困惑的是我是否需要将Visual Studio中现有的Web API项目转换为新的控制台应用程序,或者是否有办法在解决方案中创建另一个控制台应用程序项目,该项目可以充当Web服务器Web API服务,或者更确切地说,是否有一种方法可以向现有MVC项目添加带有Main()入口点的控制台元素(覆盖Global.asax入口点).
搜索没有产生太多信息,可以帮助我填补这一知识空白.希望有人能指出我正确的方向.即使是在高水平.