小编joh*_* Gu的帖子

SSL会在我的asp.net mvc3 Web应用程序中加密查询字符串和post请求的主体

我有一个问题,如果使用SSL将加密查询字符串和包含字段值的Post请求体?

如果答案是肯定的,

那么这是否意味着我可以99%的信心而不是一个骗子将无法修改查询字符串和帖子正文请求?

BR

security encryption ssl asp.net-mvc-3

5
推荐指数
1
解决办法
702
查看次数

Security.Authentication.AuthenticationException:根据验证过程,远程证书无效

我已经下载了通过https提供API的产品的试用版.目前在我的asp.net mvc Web应用程序中,我正在执行以下操作来执行对产品试用版的API调用: -

[HttpPost]
        [ValidateAntiForgeryToken]
        public ActionResult Create(RackJoin rj, FormCollection formValues)
        {
            string controllername = RouteData.Values["controller"].ToString();
            if (ModelState.IsValid)
            {
                var message = "";
                var status = "";
                long assetid = new long();
                XmlDocument doc = new XmlDocument();
                using (var client = new WebClient())
                {
                    var query = HttpUtility.ParseQueryString(string.Empty);
                    foreach (string key in formValues)
                    {
                        query[key] = this.Request.Form[key];
                    }

query["username"] =  System.Web.Configuration.WebConfigurationManager.AppSettings["ApiUserName"];
query["password"] =  System.Web.Configuration.WebConfigurationManager.AppSettings["ApiPassword"];
string apiurl = "https://win-spdev:8400/servlets/AssetServlet";
//code goes here…..
                    var url = new UriBuilder(apiurl);
                    url.Query = query.ToString(); …
Run Code Online (Sandbox Code Playgroud)

asp.net asp.net-mvc

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

格式错误的开始标签。属性应该用空格分隔。

我将以下 HTML 作为我的 SharePoint 网站的一部分(并且此 HTML 是从 SharePoint 本身自动生成的),并且它不是自定义 Web 部件:-

<td style="width:24px"><a id="WPQ2_nav_prev_a" href="javascript:MoveToDate('8\u002f13u002f2013','WPQ2');" ><img id="WPQ2_nav_prev_img"
src="/_layouts/15/1033/images/calprev.png"
width="19" height="19") /></a></td>
Run Code Online (Sandbox Code Playgroud)

但是当我使用 IE F12 开发人员工具验证我的网站时,控制台在上面的代码中显示以下错误(特别是在 height="19" 之后):-

HTML1423:格式错误的开始标签。属性应该用空格分隔。

是什么导致了这个/我该如何解决?

html css sharepoint

5
推荐指数
1
解决办法
7619
查看次数

右上角的边框设置

我有以下CSS代码: -

border:5px solid grey !important;
Run Code Online (Sandbox Code Playgroud)

将样式设置应用于上,下,左,右四个边框.但我如何定义边界只适用于上,右和左.无需为每个定义单独的样式?谢谢

html css html5

5
推荐指数
2
解决办法
95
查看次数

没有秒和毫秒的TimeOfDay

我的asp.net mvc Web应用程序中有以下代码,其中StartDate的类型为DateTime?: -

@item.StartDate.Value.TimeOfDay
Run Code Online (Sandbox Code Playgroud)

以上将显示当前时间,包括秒和毫秒,如我不想要的: -

10:17:54.6023744
Run Code Online (Sandbox Code Playgroud)

但有没有办法只显示小时:上午或下午的分钟?谢谢

c# asp.net-mvc razor

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

转换为值类型"Int32"失败,因为实现值为null.

我有以下代码insdie我的asp.net mvc web应用程序: -

SystemInformation s = new SystemInformation()
            {
AssetCount = new AssetCount() {

                CustomerCount = entities.AccountDefinitions == null ? 0 : entities.AccountDefinitions.Count(),
                RackCount = tms.TMSRacks == null ? 0 : tms.TMSRacks.Count(),
                ServerCount = tms.TMSServers == null ? 0 : tms.TMSServers.Count(),
                CustomCount = tms.CustomAssets==null? 0 : tms.CustomAssets.Sum(a => a.Quantity)

            },
Run Code Online (Sandbox Code Playgroud)

但是目前如果任何Enumerable为空,我将收到以下错误: -

转换为值类型"Int32"失败,因为实现值为null.结果类型的泛型参数或查询必须使用可空类型.

c# asp.net asp.net-mvc-4

5
推荐指数
1
解决办法
1万
查看次数

使用 HTML.EditorFor 与使用 HTML.CheckBox

我有以下包含 bool 值的模型类:-

Public class Server
{
        public bool IsIPUnique { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

目前我正在使用以下内容在我的 Razor 视图中显示复选框:-

<input type="CheckBox" name="IsIPUnique" value="true" @(Html.Raw(Model.IsIPUnique ? "checked=\"checked\"" : ""))/> IP Unique.
Run Code Online (Sandbox Code Playgroud)

但我阅读了 EditorFor 模板,它可以自动创建复选框并根据模型值选中/取消选中它,所以我尝试了以下操作:-

@Html.EditorFor(model=>model.IsIPUnique)<span>test</span>
Run Code Online (Sandbox Code Playgroud)

所以我的问题是我是否可以用使用 EditorFor 的新代码替换我的旧代码?,或者 asp.net mvc 可能会以不同的方式处理这些值?谢谢

asp.net-mvc editorfor asp.net-mvc-5

5
推荐指数
1
解决办法
1万
查看次数

在新的asp.net mvc-5 Web应用程序中缺少"input-validation-error"的类定义

我使用VS 2013创建了一个新的asp.net mvc-5 Web应用程序.现在,当我尝试内置登录表单并将所需字段留空时,我得到以下内容: -

在此输入图像描述

两个字段都没有用红色突出显示,因为我用来进入以前版本的asp.net mvc.现在从生成的标记我可以检查任何有验证错误的字段将具有以下类: -

input-validation-error
Run Code Online (Sandbox Code Playgroud)

但我主要搜索在我的asp.net mvc-5 web应用程序中自动生成的整个css文件; site.css,bootstrap.css bootstrap.min.css,但我找不到输入验证错误的定义?所以任何人都可以就此提出建议,如果他们有验证错误我怎么能用红色突出显示字段,为什么这不是asp.net mvc-5里面的默认行为?

css asp.net asp.net-mvc asp.net-mvc-5

5
推荐指数
1
解决办法
9481
查看次数

启动2个DBContext对象,一个用于日志,另一个用于c#控制台应用程序中的业务数据

我正在研究ac#console应用程序,我使用实体框架5.0作为sql server的数据访问层.现在我想跟踪更改并将它们保存在日志表中.所以这样做我发起了2个DbContext对象,一个用于业务数据,另一个用于日志数据,如下所示:

class Sync
    {
        static void Main(string[] args)
        {
            string syncResult = "Sync started";
            Entities entities = new Entities();//for business data
            Entities entities2 = new Entities();//for logs
            try
            {
              //code goes here
              entities.SaveChanges();
            }
            catch (Exception e)
            {
                syncResult = string.IsNullOrEmpty(e.Message) ? "Error" : e.Message;

            }
            entities.Dispose();
            entities2.LogHistories.Add(new LogHistory() { Description = syncResult });
            entities2.SaveChanges();
            entities2.Dispose(); 
Run Code Online (Sandbox Code Playgroud)

现在我为我的日志提供了单独的DbContext对象,原因如下: -

  1. 如果我的第一个实体对象由于任何原因(例如未处理的验证错误或尝试破解系统等)而无法保存更改,则第二个实体2仍将能够保存日志条目.让我们举个例子.假设我正在使用第三方API进行集成,我期望它们以特定格式返回JSON.现在让我们假设返回json对象缺少数据,在这种情况下,当我尝试添加它将引发的对象时,它会异常...现在因为我有日志的单独实体对象,所以日志条目将被保存(不会受到任何业务数据异常的影响).但如果我有一个DBContext对象,那么日志条目将无法保存,因为我无法保存业务数据..所以我的问题是如果启动2个DBContext对象一个用于日志而另一个用于业务数据是一个有效的方法跟随,或者是一个不好的决定?

c# ado.net entity-framework dbcontext entity-framework-5

5
推荐指数
2
解决办法
824
查看次数

如何/在哪里asp.net mvc处理解码和动作方法参数

我在IIS8下部署了两个ASP.NET MVC Web应用程序(让我称之为发送方和接收方Web应用程序).我从发送方内部的操作方法调用接收方Web应用程序中的操作方法.

现在在发件人中,我有以下操作方法,将上传string到接收器上的外部操作方法:

using (WebClient wc = new WebClient())                
{
    var data = JsonConvert.SerializeObject(resource);      
    string url = "https://receiver/CreateResource?AUTHTOKEN=" + pmtoken;
    Uri uri = new Uri(url);
    wc.Encoding = System.Text.Encoding.UTF8;
    wc.Headers.Add(HttpRequestHeader.ContentType, "application/json; charset=utf-8");
    wc.Headers.Add("Authorization", token);
    output = wc.UploadString(uri, data)
}
Run Code Online (Sandbox Code Playgroud)

我编码string使用UTF-8在上传之前,因为我将传递Unicode字符,如£,¬等...

在接收方Web应用程序上,接收操作方法如下:

public List<CRUDOutput> CreateResource(Resource resourceinfo)
Run Code Online (Sandbox Code Playgroud)

一开始我认为我的方法不会很好.因为我正在wc.Encoding = System.Text.Encoding.UTF8;从发送器向接收器动作方法发送编码数据(使用),并且我没有对接收器动作方法进行任何类型的解码.

但是,似乎在接收动作方法上resourceinfo接收到正确的解码值.所以看起来ASP.NET MVC会在某处自动处理解码.

第一个问题:

谁能告诉我ASP.NET MVC如何处理接收操作方法中的解码?

第二个问题:

在我的WebClient()方法中,我定义以下内容以指定内容类型标头:

 wc.Headers.Add(HttpRequestHeader.ContentType, "application/json; charset=utf-8");
Run Code Online (Sandbox Code Playgroud)

然而,似乎这对我的情况没有任何影响.当我删除上面的代码行时,没有任何变化.任何人都可以告诉我,如果定义内容类型标题会对我的情况有任何影响吗?

最后一个问题:

如果我没有明确定义UTF-8编码使用wc.Encoding = System.Text.Encoding.UTF8;WebClient() …

.net asp.net asp.net-mvc webclient asp.net-mvc-4

5
推荐指数
1
解决办法
585
查看次数