如果请求GET数据无效且无法解析,我想从我的django视图函数返回HTTP 400响应.
我该怎么做呢?似乎没有Exception
像404这样的相应类:
raise Http404
Run Code Online (Sandbox Code Playgroud) 简单的问题,但在当前的开发人员文档中似乎没有直接的答案.
Swift编译成机器语言(即汇编),还是编译成某个中间形式然后在虚拟机上运行?
(我怀疑它确实如此,但是对苹果世界的发展不熟悉,我不清楚它是否可能是某个人.)
以下是:
MyObject myVariable;
for(int i = 0; i < objects.Length, i++){
myVariable = objects[i];
// do stuff...
}
Run Code Online (Sandbox Code Playgroud)
效率更高:
for(int i = 0; i < objects.Length, i++){
MyObject myVariable = objects[i];
// do stuff...
}
Run Code Online (Sandbox Code Playgroud)
因为每次都不会创建一个用于保存引用的新变量?(或者编译器足够智能,只是为了使用相同的变量)..
(如果创建了一个新变量,它是否在堆上进行了malloced?)
StackOverflow上的MSDN文档和许多答案都是为了解决正确实现的问题IDisposable
,例如MSDN IDisposable,MSDN实现IDisposable,优秀的StackOverflow Q&A
但是,它们似乎都没有涵盖我所拥有的更常见的用例:当我的班级有一个IDisposable
比一个方法更长的成员时该怎么办?例如
class FantasticFileService
{
private FileSystemWatcher fileWatch; // FileSystemWatcher is IDisposable
public FantasticFileService(string path)
{
fileWatch = new FileSystemWatcher(path);
fileWatch.Changed += OnFileChanged;
}
private void OnFileChanged(object sender, FileSystemEventArgs e)
{
// blah blah
}
}
Run Code Online (Sandbox Code Playgroud)
最接近的MSDN解决这个问题只涉及IDisposable
短时间实例的用例,所以调用Dispose
例如using
:
仅在直接使用非托管资源时才实现IDisposable.如果您的应用只使用实现IDisposable的对象,请不要提供IDisposable实现.相反,您应该在完成使用后调用对象的IDisposable.Dispose实现.
当然,这里不可能我们需要实例比方法调用更长时间存活!?
我怀疑这样做的正确方法是实现IDisposable
(将责任传递给我的类的创建者来处置它)但是没有所有的终结器和protected virtual void Dispose(bool disposing)
逻辑,因为我没有任何无人管理的资源,即:
class FantasticFileService : IDisposable
{
private FileSystemWatcher fileWatch; // FileSystemWatcher is IDisposable
public …
Run Code Online (Sandbox Code Playgroud) 保持代码"干净"的好处是什么?
很多时候我在这里看到有关某人试图在XAML中执行等效操作而不是代码隐藏的帖子.他们唯一的理由是他们希望将代码保持在"干净"之后.如果我错了,请纠正我,但事实并非如此:
InitializeComponent();
Run Code Online (Sandbox Code Playgroud) 必须运行它所包含的.gics文件包含一堆代码,尽管它可能是隐藏的.这纯粹是心理上的吗?我怀疑是开发人员来自网络背景并且喜欢标记而不是代码.
编辑:我不提议代码而不是XAML - 同时使用 - 我更喜欢在XAML中进行绑定 - 我只是反对尽力避免在WPF应用程序中编写esp背后的代码 - 它应该是融合的两者都是为了充分利用它.
我试图将当前本地时间作为字符串格式:年 - 月 - 日小时:分钟:秒.我将用于记录.通过阅读文档,我可以通过以下方式完成此操作:
import time
'{0:%Y-%m-%d %H:%M:%S}'.format(time.localtime())
Run Code Online (Sandbox Code Playgroud)
但是我得到错误:
Traceback (most recent call last): File "", line 1, in ValueError: Invalid format specifier
我究竟做错了什么?有没有更好的办法?
我知道我可以为不同的边创建一个带有矩形或边框的虚线边框,不同的笔触粗细:
<StackPanel Orientation="Horizontal">
<Rectangle Stroke="Green" StrokeThickness="2" StrokeDashArray="4 2" Fill="LightGreen" Height="64" Width="32" Margin="5"/>
<Border BorderBrush="Green" BorderThickness="2,2,2,0" Background="LightGreen" Height="64" Width="32" Margin="5" />
</StackPanel>
Run Code Online (Sandbox Code Playgroud)
无论如何,我可以实现两者:
?
更新:这需要填充它的父级空间(不像我的固定大小的例子),例如网格 - 所以具有固定大小的DrawingGeometry和我自己的笔不能用来实现这个......可以吗?
我有WPF和Windows Forms的经验,但是只使用了Windows Forms DataGridView而不是WPF DataGrid(它只包含在.Net 4中,或者可以从Codeplex添加到.Net 3.5中,我理解).我即将使用其中一个控件来大量创建大量数据,并且读取性能是WPF DataGrid的一个问题所以我可能会坚持使用Windows窗体DataGridView.这是这样的吗?
我不想使用第三方控件.
对于大量数据,Windows窗体DataGridView是否为WPF DataGrid提供了显着的性能?
如果我使用WPF,我宁愿使用.Net 3.5S SP1,除非.Net 4中的DataGrid明显更好?
此外,我想使用ADO与DataTable,我认为它更适合Windows窗体..
我想从WPF TextBox获取当前光标位置.如果一个TextBox
包含文本abhishek
和光标闪烁后abhi
我想要那个索引,以便稍后以TextBox
编程方式清除并以编程方式分配一些其他或相同的文本后我想让光标在4个字符后闪烁.
我试过像这样得到光标位置,
_tempFuncName = txtFunctionName.Text;
_cursorPosition = txtFunctionName.SelectionStart;
_selectionLength = txtFunctionName.SelectionLength;
Run Code Online (Sandbox Code Playgroud)
并在此后的其他事件中稍稍退后一步,
txtFunctionName.Text = _tempFuncName;
txtFunctionName.SelectionStart = _cursorPosition;
txtFunctionName.SelectionLength = _selectionLength;
Run Code Online (Sandbox Code Playgroud)
这里的下划线变量是页面级变量.
此代码无效.还有其他方法吗?
例如,如果我有一个分层数据结构:
class Node
{
public List<Node> children;
}
Run Code Online (Sandbox Code Playgroud)
然后在其中一个父母那里填充到很多级别:
myNode.children.Clear();
Run Code Online (Sandbox Code Playgroud)
这将清除所有对直系孩子的提及 - 但那些直系孩子所引用的所有大孩子,大孙子等等呢?C#是否足够聪明,知道它们不再需要它们会被垃圾收集?
我已阅读使用WPF数据绑定而没有实现接口INotifyChanged可能导致内存泄漏:http://blogs.msdn.com/b/micmcd/archive/2008/03/07/avoiding-a-wpf-memory-leak-with-数据绑定-black-magic.aspx,在托管环境中如何实现?
c# ×6
.net ×4
wpf ×4
xaml ×2
datagrid ×1
datagridview ×1
datetime ×1
django ×1
memory-leaks ×1
oop ×1
python ×1
python-2.7 ×1
python-3.3 ×1
python-3.x ×1
swift ×1
winforms ×1
wpf-4.0 ×1
wpfdatagrid ×1