我想输出两个不同的视图(一个作为将作为电子邮件发送的字符串),另一个显示给用户的页面.
这是否可以在ASP.NET MVC beta中使用?
我尝试过多个例子:
1. ASP.NET MVC Beta中的RenderPartial到String
如果我使用此示例,则会收到"在HTTP标头发送后无法重定向".
如果我使用它,我似乎无法执行redirectToAction,因为它尝试渲染可能不存在的视图.如果我确实返回了视图,那么它完全搞砸了,看起来根本不正确.
有没有人对我遇到的这些问题有任何想法/解决方案,或者对更好的问题有任何建议?
非常感谢!
以下是一个例子.我要做的是创建GetViewForEmail方法:
public ActionResult OrderResult(string ref)
{
//Get the order
Order order = OrderService.GetOrder(ref);
//The email helper would do the meat and veg by getting the view as a string
//Pass the control name (OrderResultEmail) and the model (order)
string emailView = GetViewForEmail("OrderResultEmail", order);
//Email the order out
EmailHelper(order, emailView);
return View("OrderResult", order);
}
Run Code Online (Sandbox Code Playgroud)
Tim Scott接受的答案(由我改变并格式化):
public virtual string RenderViewToString(
ControllerContext controllerContext,
string viewPath, …Run Code Online (Sandbox Code Playgroud) 我对Framebuffer和Renderbuffer的概念感到困惑.我知道他们需要渲染,但我想在使用之前了解它们.
我知道存储临时绘图结果需要一些位图缓冲区.后缓冲区.当这些图纸正在进行时,需要在屏幕上看到另一个缓冲区.前缓冲区.翻转它们,再画一遍.我知道这个概念,但很难将这些对象与这个概念联系起来.
它们的概念和差异是什么?
假设您在用户控制器中,并且想要获得show请求的json响应,那么如果您可以在views/users/dir中创建一个名为show.json的文件并且在您的用户#show之后创建一个文件会很好动作完成后,呈现文件.
目前你需要做一些事情:
def show
@user = User.find( params[:id] )
respond_to do |format|
format.html
format.json{
render :json => @user.to_json
}
end
end
Run Code Online (Sandbox Code Playgroud)
但是如果你可以创建一个自动渲染的show.json文件就好了:
def show
@user = User.find( params[:id] )
respond_to do |format|
format.html
format.json
end
end
Run Code Online (Sandbox Code Playgroud)
这样可以减轻我的痛苦,并且当我在控制器中渲染我的json时,它会消除我得到的那种可怕的肮脏感觉
很多时候,多个面板适合我想要的布局,但我知道不同面板类型的渲染时间有所不同.
例如,MSDN声明
相对简单
Panel,例如Canvas,可以具有比更复杂的更好的性能Panel,例如Grid.
那么在渲染时间和性能方面,WPF面板的最高效率是多少?
WPF小组:
CanvasDockPanelGridUniformGridStackPanelWrapPanelVirtualizingPanel/VirtualizingStackPanel我很确定我在网上看到了这个列表,但我现在找不到它.
我正在寻找的理想答案将为我提供一个面板列表,按照他们最快速渲染的顺序.我知道儿童的数量是面板效率的一个重要因素,因此为了这个问题,假设每个面板只有一对Label/ TextBox一对.
此外,我想要一个例外列表,例如特定面板,它们在某些条件下比其他面板表现更好.
更新
总结基于下面接受的答案,面板性能基于子项的数量和布局,但一般来说,从最快到最慢的列表是:
CanvasStackPanelWrapPanelDockPanelGrid此外,如果有许多项目并不总是适合屏幕,则应始终使用VirtualizingPanel/ VirtualizingStackPanel.
在强烈选择此列表中的项目之前,我强烈建议您阅读下面接受的答案以获取更多详细信息.
当我尝试在Android Studio中渲染布局预览时出现错误:
不支持的major.minor版本52.0
在我的角度4应用程序中,我有一个字符串
comment: string;
comment = "<p><em><strong>abc</strong></em></p>";
Run Code Online (Sandbox Code Playgroud)
当我在我的HTML中提供这个文本时,就像
{{comment}}
Run Code Online (Sandbox Code Playgroud)
然后它显示:
<p><em><strong>abc</strong></em></p>
Run Code Online (Sandbox Code Playgroud)
但我需要以粗体和斜体形式显示文本"abc",如 abc
我怎样才能做到这一点?
如何转换的svg到png,在Python?我正在存储svg一个实例StringIO.我应该使用pyCairo库吗?我该如何编写代码?
正如你可能知道,制作的Airbnb opensourced Rendr(http://nerds.airbnb.com/weve-open-sourced-rendr)应使服务器端渲染的主干应用程序.这很酷,因为可以在服务器上运行模板渲染的第一次"迭代",并且客户端获得完全呈现的HTML文档以及整个JS应用程序.它大大缩短了显示时间,可以让我们摆脱其他服务器端的模板系统.
那么,有人设法用jsdom或ZombieJS渲染AngularJS吗?在理论上,Node.js上的这些dom /浏览器仿真应该足以用于简单的服务器端角度模板,但我发现谷歌搜索的结果并不是非常确定的.
由于某种原因,Chrome将#FF3A00渲染为#FF0000.我从jsfiddle中包含了一个截图来说明这一点.Color Meter报告的颜色(以及我所看到的)与CSS所说的颜色不同.
这也发生在其他颜色上.例如,根据Color Meter,#FFAF00呈现为#FFA400.
但是,在Safari和Firefox上呈现的颜色没有问题.我在使用Chrome 11,Safari 5和Firefox 5的Mac上.
我确信这是一个合乎逻辑的解释.有任何想法吗?
更新:我在Safari旁边附上了Chrome的屏幕截图,显示了相同的页面.我在Photoshop中检查了这个图像:Chrome中的颜色是#F00,Safari中的颜色是#FF3A00.

在最近在Windows/Mac桌面浏览器上测试Web应用程序 - 然后在iPad上我注意到Safari中的各种差异,这是我没想到的.即使版本#是相同的.
我想编写一份这些差异的列表(对我自己和其他人)作为开发人员参考.
例如在iPad上的Safari中
position:fixed桌面Safari <iOS 5prompt('long message...','default');只显示消息的1行(尽管它确实提供了消息的滚动我从其他人那里听说某些JavaScript不起作用等等,但我还没有完全测试它,因此我很感激您可能遇到的任何发现.
rendering ×10
templates ×2
android ×1
angular ×1
angularjs ×1
asp.net-mvc ×1
cairo ×1
colors ×1
css ×1
framebuffer ×1
html ×1
ipad ×1
json ×1
node.js ×1
opengl ×1
panel ×1
performance ×1
preview ×1
python ×1
ruby ×1
safari ×1
server-side ×1
svg ×1
variations ×1
wpf ×1