我必须使用现有数据库(不使用Doctrine管理),我只想将doctrine用于此数据库中的新表.
有没有办法告诉Doctrine不要在重新加载时删除整个数据库,而只是在yaml文件中定义的模型?
我在这里苦苦挣扎,找到一种简单的方法将数组从控制器传递到ASP.NET MVC框架上的视图.
所以在我的控制器中我会有类似的东西:
public class HomeController : ApplicationController
{
public ActionResult Index()
{
string[] myArray = { "value01", "value02", "value03"};
ViewData["passedArray"] = myArray;
return View();
}
}
Run Code Online (Sandbox Code Playgroud)
所以在我看来,我只需要调用ViewData ["passedArray"]并在其上运行循环.
但显然ViewData正在接收ViewData作为System.String,可能是因为Array DataType上的声明,但不幸的是我不知道如何正确地传递它,而不是创建数百万个代码行.
如果一个人可以帮助我,那将是太棒了.
提前致谢
我必须在MySQL数据库中找到下一个可用的id(如果数据库中有5个数据,我必须得到下一个可用的插入位置,即6).我怎样才能做到这一点?我已经使用过MAX(id),但是当我从数据库中删除一些行时,它仍然保留了未更新的旧最大值.
我一直在浏览很多关于jQuery draggable/droppable的教程,并试图将它应用到ASP.NET MVC,但我真的很困惑.
我发现的大多数样本似乎都很难理解,至少它与有线的地方有关.我基本上试图有一个可定位的盒子(一个'名册')和一个单位列表('参加者').目标是能够将任何单元拖到框中,并将它们添加到数据库中的名单中.
有没有人知道一些更简单的样本可能会说明如何在ASP.NET MVC中使用jQuery的这一部分?
举例来说,我一直在寻找http://philderksen.com/2009/06/18/drag-and-drop-categorized-item-list-with-jquery-and-aspnet-mvc-part-1/和它非常整洁,但它不能解释我需要什么.它没有多大意义,并且大部分代码都非常散乱,我甚至无法追踪某些调用的位置,以确定连接方式.(例如,jQuery如何调用Controller动作,以便在删除某些内容时触发?如何获取被拖动项目的ID,以便将其添加到目标?)
在这里,我做了一些改变 - 我为这种混乱道歉.它仍然没有完全发挥作用我是如何努力的.如果事情在原始列表中重新排列,是否有可能使其不是火灾事件,但只有当它被放到另一个列表中时?
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<IEnumerable<Draggable.Item>>" %>
<asp:Content ContentPlaceHolderID="TitleContent" runat="server">
Index
</asp:Content>
<asp:Content ContentPlaceHolderID="MainContent" runat="server">
<h2>
Index</h2>
<div style="float: left; width: 250px;">
<ul class="itemBox">
<% foreach (var item in Model)
{ %>
<% Html.RenderPartial("Item", item); %>
<% } %>
</ul>
</div>
<div style="float: left; width: 250px;">
<ul class="itemBox">
<p>
Drop here</p>
</ul>
</div>
</asp:Content>
<asp:Content ContentPlaceHolderID="ScriptContent" runat="server">
<style type="text/css">
#draggable {
width: 100px;
height: 100px;
padding: 0.5em;
float: …Run Code Online (Sandbox Code Playgroud) 在模态对话框上显示MessageBox后,ALT + TAB无法正常工作...
我在一个解决方案文件下有三个项目(P1,P2和P3).P1包含P1Form.cs,P2包含P2Form.cs.
这些文件的详细信息如下:
P1Form.cs包含一个按钮,显示MessageBox.Show()方法的消息框.P2Form.cs包含一个按钮,显示MessageBox.Show()方法的消息框.
项目P3包含3个表单Form_A,Form_B和Form_C.Form_A是MDI容器,有一个按钮可以打开Form_B作为其子窗体.Form_B还有一个按钮,可以从ShowDialog()方法打开Form_C作为模式对话框.
Form_C继承自P2Form.cs,P2Form.cs继承自P1Form.cs. Form_A.cs是Main表单,它将是第一个应用程序表单.
重现所需问题的步骤:
问题: 现在通过Alt + Tab切换窗口.您将无法在切换窗口中看到当前的窗口图标.
我试过的其他选择......
Form.show()而不是Form.ShowDialog,那么它工作正常.任何人都可以建议我如何解决这个问题而不做上面提到的两个我已经尝试过的替代方案?
我正在尝试使用LINQ To Objects创建一个查询,该查询将为我提供文件,由filename编制索引,并将值映射到其二进制数据byte[].
但是我找不到一个"整洁"的方法来做到这一点.我希望得到类似Dictionary<T,K>输出的东西.
这是我到目前为止所拥有的.示例delimFileNames ="1.jpg | 2.jpg"
//Extract filenames from filename string
//and read file binary from file
//select result into a filename indexed collection
var result = from f in delimFileNames.Split(Constants.DDS_FILENAME_SEPARATOR)
let filePath = Path.Combine(ddsClient.WorkingDirectory, f)
let fileData = File.ReadAllBytes(filePath)
select new KeyValuePair<string, byte[]>(f, fileData);
return result.ToDictionary(kvp => kvp.Key, kvp=> kvp.Value);
Run Code Online (Sandbox Code Playgroud)
主要的搔痒是为什么我不能使用无参数ToDictionary()或直接演员.任何改善上述内容的建议或替代方案均值得赞赏.
我有时会得到以下异常:
com.ibm.db2.jcc.b.gm: [jcc] [t4] [2030] [11211] [3.50.152]在对连接的底层套接字,套接字输入流或套接字输出流进行操作期间发生通信错误.错误位置:Reply.fill().消息:连接重置.ERRORCODE = -4499,SQLSTATE = 08001
问题是,代码成功执行了一段时间,然后突然我得到了这个异常.但是,当我再次运行代码时,它会正常运行.
有人可以告诉我可能出现的问题,并提供一些解决方法.
我想得到一个TimeSpan与另一个TimeSpan的比率(基本上是从它的总时间开始播放视频的进度).我目前的方法是获取两个TimeSpan对象的毫秒数,并将一个对象除以另一个.就像是:
int durationInMilliseconds = totalTimeSpan.Milliseconds;
int progressInMilliseconds = progressTimeSpan.Milliseconds;
Double progressRatio = progressInMilliseconds / durationInMilliseconds;
Run Code Online (Sandbox Code Playgroud)
有更直接的路线吗?这是一个简单的问题,我只是好奇,如果有一个超级优雅的方式来解决它.
为所有詹姆斯干杯
我在字典中存储双打时看到了一些奇怪的东西,我对此感到困惑.
这是代码:
Dictionary<string, double> a = new Dictionary<string, double>();
a.Add("a", 1e-3);
if (1.0 < a["a"] * 1e3)
Console.WriteLine("Wrong");
if (1.0 < 1e-3 * 1e3)
Console.WriteLine("Wrong");
Run Code Online (Sandbox Code Playgroud)
第二个if语句按预期工作; 1.0不小于1.0.现在,第一个if语句的计算结果为true.非常奇怪的是,当我将鼠标悬停在if上时,intellisense告诉我错误,但代码很高兴地移动到Console.WriteLine.
这适用于Visual Studio 2008中的C#3.5.
这是浮点精度问题吗?那为什么第二个if语句有效呢?我觉得我在这里缺少一些非常基本的东西.
任何见解都表示赞赏.
Edit2(重新提出问题):
我可以接受数学精度问题,但我现在的问题是:为什么悬停过度评估正确?中间窗口也是如此.我将第一个if语句中的代码粘贴到中间窗口中,并评估为false.
更新
首先,非常感谢所有伟大的答案.
我也在同一台机器上的另一个项目中重新创建这个问题.看看项目设置,我看不出任何差异.看看项目之间的IL,我认为没有差异.看看反汇编,我发现没有明显的差异(除了内存地址).然而,当我调试原始项目时,我看到: 问题的截图http://i30.tinypic.com/ega874.png
即时窗口告诉我if是否为false,但代码属于条件.
无论如何,我认为最好的答案是在这些情况下为浮点运算做准备.我不能放弃这个的原因更多的是调试器的计算与运行时的不同.非常感谢Brian Gideon和stephentyrone的一些非常有见地的评论.
c# ×3
asp.net-mvc ×2
java ×2
arrays ×1
asp.net ×1
collections ×1
db2 ×1
doctrine ×1
jdbc ×1
jquery ×1
linq ×1
locking ×1
math ×1
messagebox ×1
modal-dialog ×1
mysql ×1
orm ×1
sql ×1
viewdata ×1
windows ×1