Google-fu让我失败了.任何人都可以简单解释以下陈述会做什么吗?:
UPDATE
message WITH (ROWLOCK)
SET
message = message | 2
Run Code Online (Sandbox Code Playgroud)
我在触发器中发现了这个,我无法找到解释什么的文档 字符在这样的声明中做.
我正在尝试计算美元金额折价的百分比。在50%的价格下,有时您会得到半分钱,我需要四舍五入到最接近的一分。
在Sql中,我的计算如下:
round(retail * 0.5, 2, 0)
如果采用以下值,则会得到不同的结果:
不全面的我得到:
取整后得到:
有人告诉我这是“银行取整”的一种形式,但似乎影响取整方向的值是整数值。
我的问题是,我希望最高值舍入为2.20。如果这确实是银行家的四舍五入,并且受此处的整数值影响,那么有人可以防止这种情况吗?如果不是银行家四舍五入,请问有人可以提供解释并可能提供解决办法,以使正常的四舍五入行为成为可能?
提前致谢!
我团队的一个持续关键点是我们的"共同"图书馆.(在这里查看相关问题,说"框架"可能更为正确).
目前包含v1,v2和v3.其中v3用于所有新应用程序.它包含多个WCF服务,一个包含业务对象的类库,以及一个用于js/css/images的公共Web目录.
我们希望在我们前进的过程中做正确的事情,特别是因为我们都积极开始为共同图书馆做出贡献.它变成了一个巨大的泥球,并且部署它对每个人来说都是可怕的.
我们首先想到的是设置一个测试服务器,在所有代码中运行单元测试,以确保没有任何中断.问题是为所有内容编写测试非常繁琐,坦率地说,没有人有这样的时间.我们对编写适当的单元测试也缺乏经验.话虽如此,如果这是最好的路线,我们会完成它.
在那之后,我们不太确定.我们将公共代码视为应用持续集成实践的地方,因为我们编写了许多使用它的不同应用程序.
这也引入了一些问题,例如将DLL复制到本地,或者将某些内容放在某个服务器上.我们已经感觉我们在DLL地狱,想要离开.
(好)软件商店用来管理这种情况的策略是什么?
任何和所有的建议表示赞赏.如果需要更多信息,请询问.我很乐意提供它.
谢谢!
功能签名:
char * errMessage(int err);
我的代码:
[DllImport("api.dll")]
internal static extern char[] errMessage(int err);
...
char[] message = errMessage(err);
这会返回一个错误:
Cannot marshal 'return value': Invalid managed/unmanaged type combination.
我究竟做错了什么?谢谢你的帮助.
这是来自类库的代码:
proc.StartInfo = new ProcessStartInfo(CmdPath, "+an -b"); proc.StartInfo.RedirectStandardOutput = true; proc.StartInfo.CreateNoWindow = true; proc.StartInfo.UseShellExecute = false; proc.Start(); proc.WaitForExit();
这是完全正如我从控制台测试应用程序调用时所期望的那样.当我使用相同的库并从ASP .NET Web服务调用该方法时,它就会挂起.
我在这里缺少什么,也许权限?ASPNET服务可以访问EXE所在的文件夹,我看到它在任务管理器中运行,尽管它没有做任何事情.
如果有人能告诉我我做错了什么,我将不胜感激.谢谢.
编辑:抱歉缺乏信息.CmdPath转到我们的调度软件的命令行界面.我根据他们提供的文档传递命令.我有一种获取作业列表的方法,以及另一种运行作业的方法.......嗯想法.客户端通常使用Active Directory登录,我认为模仿是必要的.现在去测试.
编辑2:好的,现在客户端正在搞乱AccessViolation问题.这显然是权限的事情.如果软件使用集成的AD授权,并且我冒充我的AD帐户,那就足够了吗?我正在使用web.config中的标记进行模拟.
我有一个专为Windows CE设备设计的ASP.NET应用程序,需要从扫描的条形码中获取信息.设备将扫描数据作为字符串输入与crlf一起发送到任何具有焦点的字段.我设置了一个带有文本框的页面,该文本框将输入和帖子返回以查找项目.
现在,我希望用户看不到该框,但是如果字段是"visibility:hidden"或"display:none",那么当我将焦点设置为它时,IE会抱怨.我尝试使用绝对坐标将其移出屏幕,但设置焦点会将窗口滚动到新位置.
有没有人有任何建议可以解决这个问题?提前致谢.
我在我的本地IIS7上运行了一个asp.net mvc 3应用程序.这引用了一个非常有效的WCF服务.
我最近添加了对同一位置托管的另一个服务的引用,并在调用方法时出现以下错误:
'net.tcp:// webdev02:15001/CommonService/Service.svc/mex'不支持请求的升级.这可能是由于绑定不匹配(例如在客户端而不是在服务器上启用安全性).
服务中的web.config在第一个工作服务和第二个非工作服务的绑定之间具有相同的设置.在我的客户同样的故事.
我也使用我的Windows凭据进行连接,如下所示:
svc.ClientCredentials.Windows.ClientCredential.UserName = "myname";
svc.ClientCredentials.Windows.ClientCredential.Password = "mypass";
Run Code Online (Sandbox Code Playgroud)
此外,我可以使用WcfTestClient成功调用这两个服务.有什么想法,为什么一个人不会为我工作?在此先感谢您的帮助.
这工作 ......我把处理代码移到了finally块,现在每次都失败了.
我有一个测试电子表格,有4条记录,长6列.这是我用来引入它的代码.这是IIS 5(我的电脑)和IIS 6(Web服务器)上的ASP .Net 3.5.
它在捕获之前的线上爆炸:"values =(object [,])range.Value2;" 出现以下错误:
11/2/2009 8:47:43 AM :: Not enough storage is available to complete this operation. (Exception from HRESULT: 0x8007000E (E_OUTOFMEMORY))
有任何想法吗?建议?我从codeproject中获取了大部分代码,所以我不知道这是否是使用Excel的正确方法.感谢您的任何帮助,您可以提供.
这是我的代码:
Excel.ApplicationClass app = null;
Excel.Workbook book = null;
Excel.Worksheet sheet = null;
Excel.Range range = null;
object[,] values = null;
try
{
// Configure Excel
app = new Excel.ApplicationClass();
app.Visible = false;
app.ScreenUpdating = false;
app.DisplayAlerts = false;
// Open a new instance of excel with the uploaded … 我正在尝试为系统编写一个通用的Filter扩展方法,这样我就可以在任何List上调用filter并传入一个字段名称及其值来过滤.
我目前在我的系统中有每种类型的方法,但我正在尝试合并到一种方法.
这是我到目前为止...简化所以它只是文本搜索:
public static List<T> Filter<T>(this List<T> model, string json)
{
JavaScriptSerializer ser = new JavaScriptSerializer();
Dictionary<string, object> searchFields = (Dictionary<string, object>)ser.DeserializeObject(json);
foreach (var key in searchFields.Keys)
{
// How do I perform the search?
}
return model;
}
Run Code Online (Sandbox Code Playgroud)
我当前的过滤器是每个键上的switch语句,并按如下方式检查每个字段:
switch(key)
{
case "Description":
list = list.Where(x => x.Description.ToLower().Contains(searchFields[key].ToString().ToLower())).ToList();
break;
}
Run Code Online (Sandbox Code Playgroud)
如何访问通用对象上的属性以对其进行过滤?我假设我需要以某种方式反思,但我不知道语法.
我正在寻找类似的东西:
list = list.where(listobject.getField(key).contains(value))
Run Code Online (Sandbox Code Playgroud)
这可能吗?在此先感谢您的帮助!
我试图不重复代码,所以我有一个方法,可以快速转换接口的属性.
我有3个使用这个接口的具体类,我希望它们都可以使用这个方法.
当我从Session中获取其中一个对象时会出现问题.我没有看到任何正确的方法.
public ActionResult GetItems()
{
details = (IHeader<IDetail>)Session["SelectedHeader"].Details // Throws invalid cast
return Json(details);
}
// My interface and class examples:
interface IHeader<T> where T: IDetail
{
IList<T> Details { get; set; }
}
class ConcreteHeader : IHeader<ConcreteDetail>
{
public IList<ConcreteDetail> Items { get; set; }
}
class ConcreteDetail : IDetail
{
...
}
Run Code Online (Sandbox Code Playgroud)
我不能使用泛型,因为这是ASP.NET MVC 3中的一个动作方法(除非有一个技巧).这是可能的,还是我必须为每个类编写一个方法?
编辑:不确定原始问题是否清楚:
进入会话的是任何一个具体对象:
Session["SelectedHeader"] = new ConcreteHeader() { Details = new List<ConcreteDetail>() };
Run Code Online (Sandbox Code Playgroud) 我的组织有一些为业务逻辑内容定义的程序集.我们正在尝试为这些公共库建立持续集成,以及维护引用它们的项目模板.这将使我们能够相对快速地敲出小型维护应用程序.
目标是按版本将这些dll放在一个文件夹中,并在运行时在Global.asax中解析它们.如果它们不是本地复制的话,我发现各种各样的东西都会中断,例如强类型的剃刀视图.
将它们放在一个共享目录中是否有任何实际好处,或者是在引用共享项目源和复制本地时构建主应用程序的最佳实践?
我的同事认为,如果业务逻辑发生变化,共享位置将使以后更容易修复错误.我觉得我们永远不需要全局更改某些对象或服务,如果我们这样做,我们必须触摸每个应用程序来处理更改.
c# ×9
.net ×4
asp.net ×4
asp.net-mvc ×2
generics ×2
interop ×2
sql-server ×2
t-sql ×2
wcf ×2
.net-4.0 ×1
c++ ×1
css ×1
excel ×1
filter ×1
frameworks ×1
interface ×1
javascript ×1
linq ×1
net.tcp ×1
reflection ×1
rounding ×1
sql ×1
unmanaged ×1
web-services ×1
windows-ce ×1