问题列表 - 第11135页

当名称不匹配时MVC UpdateModel

假设您有一个看起来像这样的模型:

public class MyClass {
    public string Name { get; set; }
    public DateTime MyDate { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

Visual Studio为您提供的默认编辑模板是MyDate属性的纯文本框.这一切都很好,但是我们可以说你需要把它分成它的月/日/年组件,你的表单看起来像:

<label for="MyDate">Date:</label>
<%= Html.TextBox("MyDate-Month", Model.MyDate.Month) %>
<%= Html.TextBox("MyDate-Day", Model.MyDate.Day) %>
<%= Html.TextBox("MyDate-Year", Model.MyDate.Year) %>
Run Code Online (Sandbox Code Playgroud)

提交时,UpdateModel由于没有定义,调用将无效MyDate-Month.有没有办法在项目中添加自定义绑定器来处理这样的情况,或者HTML输入的名称是否不同(出于何种原因)?

我发现一个解决方法是使用JavaScript在提交之前将隐藏的输入注入到表单中,这些输入连接字段并且命名正确,但这感觉不对.

asp.net-mvc updatemodel

3
推荐指数
1
解决办法
2096
查看次数

如何在 WiX 中指定 c:\users\public (%PUBLIC%)?

是否有解析为公用文件夹的属性?显然,我不想在目录结构中对“c:\users\public”进行硬编码,但我找不到解决此问题的预定义属性。是否有一种可接受的方式来指定要在此处安装和/或在卸载时删除的文件?

wix properties

2
推荐指数
1
解决办法
3706
查看次数

使用Zend_Db时如何将值设置为NULL

使用Zend_Db执行UPDATE和INSERT查询时,我经常需要设置等于NULL的值(不是'').但是,Zend_Db :: insert()和Zend_Db :: update()的默认行为似乎是将空值转换为空字符串('')并将其放入数据库中.

有没有人知道如果在PHP中值为空,实际强制NULL值进入字段的方法?

php mysql sql pdo zend-framework

6
推荐指数
1
解决办法
9273
查看次数

您曾经使用过的最佳API /框架/平台是什么?

大多数编程都是在现有的框架或平台上完成的,并使用各种AP​​I使您的编程工作更加方便.

它可以是一套设计精美的API,也可以是一个很好的框架,你可以很快地完成很酷的事情.

所有答案都应该给出具体的例子,说明为什么这个框架如此棒,或者你用它做的很酷的东西的例子.

现有的框架真正激发了你做一些很棒的工作吗?


我知道这是主观的,但我认为我们可以从这个问题中得到一些很酷的想法.请在"关闭"链接上轻松:)同时 - 提前通信.

api frameworks

21
推荐指数
12
解决办法
5207
查看次数

在cookie中存储多个值

我有一个非常大的网站,它使用了很多cookie.有约.有14种不同的饼干.我对每个项目都有不同的cookie.当用户浏览网站时,他们的浏览器中将有14个cookie.我不想要这个.

我想为我的网站提供一个包含14个项目的cookie,我可以添加,编辑和删除它们.我尝试了很多方法,但我无法做到这一点.

我需要放一些运行时cookie以及将用户名保存在cookie中.用户登录后,我想在其中保存自己的个人网站地址.最终,我同时想要用户名和个人网站地址.我想先保存用户名,然后当用户访问他的个人网站时,我将存储个人网站名称运行时间.

有没有人知道我该怎么做?

asp.net cookies

30
推荐指数
2
解决办法
6万
查看次数

ASP.NET的电子邮件服务/插件

我正在寻找一个ASP.NET的电子邮件服务或插件,它允许我根据我存储在数据库中的信息将每日电子邮件更新发送到我的电子邮件列表.

任何建议/帮助将不胜感激.

谢谢...

asp.net

2
推荐指数
1
解决办法
1319
查看次数

使用注入的代码和QWidget查找第三方QWidget :: find(hwnd)

我有一个Qt Dll,我使用Windows绕道库注入第三方应用程序:

if(!DetourCreateProcessWithDll( Path, NULL, NULL, NULL, TRUE, 
                                CREATE_DEFAULT_ERROR_MODE | CREATE_SUSPENDED, NULL, NULL,
                                &si, &pi, "C:\\Program Files\\Microsoft Research\\Detours Express 2.1\\bin\\detoured.dll",
                                "C:\\Users\\Dave\\Documents\\Visual Studio 2008\\Projects\\XOR\\Debug\\XOR.dll", NULL))
Run Code Online (Sandbox Code Playgroud)

然后我设置了一个系统范围的钩子来拦截窗口创建:

HHOOK h_hook = ::SetWindowsHookEx(WH_CBT, (HOOKPROC)CBTProc, Status::getInstance()->getXORInstance(), 0);
Run Code Online (Sandbox Code Playgroud)

其中XOR是我的程序名,而Status :: getInstance()是一个Singleton,我保持全局变量.

在我的CBTProc回调中,我想拦截所有QWidgets的窗口:

HWND hwnd= FindWindow(L"QWidget", NULL);
Run Code Online (Sandbox Code Playgroud)

这很好用,因为我得到了一个相应的HWND(我用Spy ++检查过)然后,我想得到一个指向QWidget的指针,所以我可以使用它的函数:

QWidget* q = QWidget::find(hwnd);
Run Code Online (Sandbox Code Playgroud)

但这是问题所在,返回的指针始终为0.我是不是正确地将代码注入到进程中?或者我不是应该使用QWidget :: find()吗?

谢谢,

戴夫

编辑:如果我将QWidget :: find()函数更改为我的DLL的导出函数,在设置钩子后(所以我可以设置并捕获断点),QWidgetPrivate :: mapper为NULL.

dll hook qt code-injection qwidget

7
推荐指数
1
解决办法
1939
查看次数

XSL:FO,漂浮在FOP中

前段时间我发现FOP不允许你使用浮点数,以及Xsl-Fo 1.0中的一些其他功能.我尝试了几种不同的方法来模仿它们,但我没有成功.如果有人在这方面取得了成功,或者有想法.我真的很感激启蒙.

xsl-fo apache-fop

7
推荐指数
1
解决办法
2698
查看次数

Java EE过滤器无法获取cookie?

为什么不能从servlet过滤器引用cookie?我认为Java EE不允许您清理cookie值:

public void doFilter(ServletRequest request, ServletResponse response, 
                             FilterChain chain) 
                             throws ServletException, IOException {
    request.
}
Run Code Online (Sandbox Code Playgroud)

ServletRequest不支持getCookies(与HttpServletRequest一样).

java cookies servlets java-ee servlet-filters

8
推荐指数
2
解决办法
4237
查看次数

调用BeginAcceptTcpClient后停止TcpListener

我有这个代码......

internal static void Start()
{
    TcpListener listenerSocket = new TcpListener(IPAddress.Any, 32599);
    listenerSocket.Start();
    listenerSocket.BeginAcceptTcpClient(new AsyncCallback(AcceptClient), null);
}
Run Code Online (Sandbox Code Playgroud)

然后我的回调函数看起来像这样......

private static void AcceptClient(IAsyncResult asyncResult)
{
    MessageHandler handler = new MessageHandler(listenerSocket.EndAcceptTcpClient(asyncResult));
    ThreadPool.QueueUserWorkItem((object state) => handler.Process());
    listenerSocket.BeginAcceptTcpClient(new AsyncCallback(AcceptClient), null);
}
Run Code Online (Sandbox Code Playgroud)

现在,我调用BeginAcceptTcpClient,然后一段时间后我想停止服务器.为此,我一直在调用TcpListener.Stop()或TcpListener.Server.Close().然而,这两个都执行我的AcceptClient函数.这会在我调用EndAcceptTcpClient时抛出异常.围绕这个的最佳做法是什么?一旦我调用了stop,我就可以放入一个标志来停止执行AcceptClient,但我想知道我是否遗漏了一些东西.

更新1

目前我通过将代码更改为这样来修补它.

private static void AcceptClient(IAsyncResult asyncResult)
{
     if (!shutdown)
     {
          MessageHandler handler = new MessageHandler(listenerSocket.EndAcceptTcpClient(asyncResult));
          ThreadPool.QueueUserWorkItem((object state) => handler.Process());
          listenerSocket.BeginAcceptTcpClient(new AsyncCallback(AcceptClient), null);
     }
}

private static bool shutdown = false;
internal static void Stop()
{
     shutdown = true;
     listenerSocket.Stop();
}
Run Code Online (Sandbox Code Playgroud)

更新2 …

c# sockets tcpclient

20
推荐指数
2
解决办法
3万
查看次数