在早期版本的Asp.Net会话中,可以在任何页面中访问,如静态变量使用
System.Web.HttpContext.Current.Session["key"]
Run Code Online (Sandbox Code Playgroud)
在Asp.Net Core中,如何访问通过控制器调用的不同类中的会话,而不将会话属性作为所有类的构造函数中的附加参数传递
在api odata使用 的网页中v4 protocol,如何添加附加属性?
完全动态,无实体框架,无反射提供者,
调用url时动态生成元数据。
编辑
Web Api 请求 url:
http://locahost/Service1/EntitySet1
实际的json输出:
{"@odata.context":"some url", value:[{"id":1}]}
Run Code Online (Sandbox Code Playgroud)
预期的 json 响应:
{"@odata.context":"some url", value:[{"id":1}], "ExtraCustomAttribute": "custom value"}
Run Code Online (Sandbox Code Playgroud)
如何在响应中添加此自定义属性web api odata v4 json?
在元数据调用(edmx响应)和实例负载调用(json响应)中。
在现有的.Net网站中,可以使用服务器变量访问
HttpContext.Current.Request.ServerVariables["HTTP_ACCEPT_LANGUAGE"]
Run Code Online (Sandbox Code Playgroud)
如何访问AspnetCore 1.0 Web应用程序中的ServerVariables?
在控制器内部调试时,this.HttpContext.Features不包含IServerVariablesFeature.
server-variables httpcontext request.servervariables asp.net-core
在Aspnet5 RC1 update1 Web应用程序中,尝试与Response.BinaryWrite一样,在旧的AspNet应用程序中下载文件.用户需要在客户端获得弹出保存对话框.
使用以下代码时,客户端会出现一个弹出提示以保存文件.
public void Configure(IApplicationBuilder app)
{
//app.UseIISPlatformHandler();
//app.UseStaticFiles();
//app.UseMvc();
app.Run(async (objContext) =>
{
var cd = new System.Net.Mime.ContentDisposition {
FileName = "test.rar", Inline = false };
objContext.Response.Headers.Add("Content-Disposition", cd.ToString());
byte[] arr = System.IO.File.ReadAllBytes("G:\\test.rar");
await objContext.Response.Body.WriteAsync(arr, 0, arr.Length);
});
}
Run Code Online (Sandbox Code Playgroud)
但是当在Controller的动作中使用相同的代码时,app.Run被注释掉,保存弹出窗口没有出现,内容只是呈现为文本.
[Route("[controller]")]
public class SampleController : Controller
{
[HttpPost("DownloadFile")]
public void DownloadFile(string strData)
{
var cd = new System.Net.Mime.ContentDisposition {
FileName = "test.rar", Inline = false };
Response.Headers.Add("Content-Disposition", cd.ToString());
byte[] arr = System.IO.File.ReadAllBytes("G:\\test.rar");
Response.Body.WriteAsync(arr, 0, arr.Length);
Run Code Online (Sandbox Code Playgroud)
需要的是,控制流需要来到控制器,执行一些逻辑,然后将byte []响应内容发送到客户端,用户需要保存文件.没有cshtml,只是简单的html与jquery …
在早期版本的ASP.NET中,System.Web.Script.Serialization.JavaScriptSerializer可用.用法:
Dictionary<string, object> sample = (Dictionary<string, object>)new JavaScriptSerializer().DeserializeObject("...");
Run Code Online (Sandbox Code Playgroud)
在ASP.NET 5 RC 1中,JavaScriptSerializer默认情况下似乎不可用.
JavaScriptSerializerASP.NET 5 RC 1?System.Web新版本不提供,有没有替代方案?c# serialization javascriptserializer asp.net-core-mvc asp.net-core
asp.net-core ×4
c# ×2
annotations ×1
asp.net ×1
downloadfile ×1
dynamic ×1
httpcontext ×1
odata ×1
session ×1