小编igg*_*web的帖子

检查实体框架中是否存在记录

有人可以告诉我如何检查记录是否存在,如果它确实存在然后什么也不做,如果没有,那么将记录添加到数据库中?

请参阅下面的代码:

if (isIpnValidated == true)
{
    using (WebApplication1Entities db = new WebApplication1Entities())
    {
        Orders order = new Orders();
        order.UserId = userId;
        order.Date = System.DateTime.Now;
        order.Transaction = txnId;
        order.Amount = Convert.ToDecimal(mcGross);
        order.Email = payerEmail;
        order.Country = residenceCountry;

        db.Orderss.Add(order);
        db.SaveChanges();
    }
}
Run Code Online (Sandbox Code Playgroud)

我只是想确保数据库中没有可能的重复.

c# entity-framework

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

MVC 5单视图中的多个模型

有人可以提供一个如何在一个视图中组合两个模型的示例吗?

目前我有一个名为RecordCard的页面,其中包含:

@model IEnumerable<WebApplication1.Models.Weight>
Run Code Online (Sandbox Code Playgroud)

这由AccountController中的以下代码提供:

public ActionResult RecordCard()
{
    var UserId = User.Identity.GetUserId();
    var weightModel = from m in db.Weights where m.UserId == UserId select m;
    return View(weightModel);
}
Run Code Online (Sandbox Code Playgroud)

RecordCard页面还包含一个绑定到以下类的表单:

public class AddWeightModel
{
    [Required]
    [DataType(DataType.Text)]
    [Display(Name = "Stone")]
    public Nullable<short> Stone { get; set; }

    [Required]
    [DataType(DataType.Text)]
    [Display(Name = "Pound")]
    public Nullable<short> Pound { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

但是,这些是具有不同目的的两个单独模型,因此如何组合到包含IEnumerable列表和一组表单元素的单个模型,这些元素最终将正确地发布到AccountController以使用以下代码将记录添加到数据库:

[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult RecordCard(Weight Model)
{
    if (ModelState.IsValid)
    {
        using (WebApplication1Entities db = new WebApplication1Entities())
        {
            Weight weight = …
Run Code Online (Sandbox Code Playgroud)

forms asp.net models asp.net-mvc-5

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

MVC联系表格与电子邮件

我想知道是否有人可以帮助提供MVC联系表格,该表格在提交时发送电子邮件?我认为我有大多数元素设置,但由于某种原因,表单似乎发送(需要年龄)然后只返回到表单,没有收到电子邮件.

MailModels.cs:

namespace WebApplication1.Models
{
    public class MailModels
    {
       public string Name { get; set; }
       public string Email { get; set; }
       public string Telephone { get; set; }
       public string Message { get; set; }
    }
}
Run Code Online (Sandbox Code Playgroud)

Contact.cshtml:

@using (Html.BeginForm("Contact", "Home", new { ReturnUrl = ViewBag.ReturnUrl }, FormMethod.Post, new { @id = "contact-form", role = "form" }))
{
    @Html.ValidationSummary()
    <fieldset>
        <div class="form-div-1">
            <label class="name">
                @Html.TextBoxFor(m => m.Name, new { @placeholder = "Name *", @type = "text" })
            </label> …
Run Code Online (Sandbox Code Playgroud)

forms asp.net smtpclient asp.net-mvc-5

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

Identity 2.0无效的登录尝试

出于某种原因,我还没有发现,但在注册和激活成功后,我无法使用电子邮件地址登录,而是收到错误"无效登录尝试".

由于使用电子邮件登录改进了ASP.NET Identity 2.0,我已经修改了注册表单以实际存储真实用户名,因为现有注册似乎通过将Username与电子邮件地址一起存储来复制.

请参阅下面Install-Package Microsoft.AspNet.Identity.Samples -Pre'创建空ASP.NET Web应用程序(MVC)项目后随附的标准代码:

var user = new ApplicationUser { UserName = model.Email, Email = model.Email };
Run Code Online (Sandbox Code Playgroud)

我的功能现在如下:

var user = new ApplicationUser { TitleId = model.TitleId, SexId = model.SexId, Forename = model.Forename, Surname = model.Surname, UserName = model.UserName, Email = model.Email, JoinDate = System.DateTime.Now };
Run Code Online (Sandbox Code Playgroud)

如您所见,UserName现在从表单接收值.这一切都很好,除了现在我注册和激活后无法登录.唯一的工作是通过将电子邮件字段中的值放入UserName字段来修改记录,这似乎是愚蠢的.

有人可以告诉我可能错过了什么吗?

c# asp.net-mvc-5 asp.net-identity-2

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

MVC 5路由问题 - 多个路由错误地针对相同的视图

我配置了多个路由,但由于某些原因,尽管规则处理不同的控制器和不同的视图,但不同的链路路由到同一视图.请看下面,我已经包含了我的RouteConfig文件和下面的示例链接:

RouteConfig.cs

using System.Web.Mvc;
using System.Web.Routing;

namespace WebApplication1
{
    public class RouteConfig
    {
        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

            routes.MapRoute(
                name: "Account",
                url: "Account/{action}/{id}",
                defaults: new { controller = "Account", id = UrlParameter.Optional }
            );

            routes.MapRoute(
                name: "Member",
                url: "Member/{action}/{id}",
                defaults: new { controller = "Member", id = UrlParameter.Optional }
            );

            routes.MapRoute(
                name: "Root",
                url: "{action}/{id}",
                defaults: new { controller = "Home", id = UrlParameter.Optional }
            );

            routes.MapRoute(
                name: "Default",
                url: "{controller}/{action}/{id}",
                defaults: new { controller = "Home", action …
Run Code Online (Sandbox Code Playgroud)

c# url-routing asp.net-mvc-5

6
推荐指数
1
解决办法
1207
查看次数

如何在ASP.NET Core中创建MVC5 MvcHtmlString

我想知道是否有人可以帮助演示如何在ASP.NET Core中创建IHtmlContent或HtmlString,这与我以前在MVC5中所做的类似。我通常会在Helper类中声明一个新的MvcHtmlString方法,如下所示:

HtmlExtender.cs

using System.Text;
using System.Web;
using System.Web.Mvc;
using System.Web.Routing;

namespace WebApplication1.Helpers
{
    public static class HtmlExtender
    {
        public static MvcHtmlString MenuLink(this HtmlHelper htmlHelper, string linkText, string controller, string action, string area, string anchorTitle)
        {
            var urlHelper = new UrlHelper(htmlHelper.ViewContext.RequestContext);

            var url = urlHelper.Action(action, controller, new { area });

            var anchor = new TagBuilder("a") {InnerHtml = HttpUtility.HtmlEncode(linkText)};
            anchor.MergeAttribute("href", url);
            anchor.Attributes.Add("title", anchorTitle);

            var listItem = new TagBuilder("li") {InnerHtml = anchor.ToString(TagRenderMode.Normal)};

            if (CheckForActiveItem(htmlHelper, controller, action, area))
            {
                listItem.GenerateId("menu_active");
            }

            return MvcHtmlString.Create(listItem.ToString(TagRenderMode.Normal)); …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc-5 asp.net-core-mvc

6
推荐指数
1
解决办法
4582
查看次数

Tomcat修复内存泄漏?

我正在使用 6.0.20 我在服务器上运行了许多 Web 应用程序,随着时间的推移,大约 3 天,服务器需要重新启动,否则服务器崩溃并变得无响应。

我有以下 JVM 设置:

-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=c:\tomcat\Websites\private\mydomain\apache-tomcat-6.0.20\logs
Run Code Online (Sandbox Code Playgroud)

这为我提供了一个 hprof 文件,我使用 Java VisualVM 加载了该文件,该文件标识了以下内容:

byte[] 37,206   Instances | Size 86,508,978
int[] 540,909   Instances | Size 55,130,332
char[] 357,847  Instances | Size 41,690,928
Run Code Online (Sandbox Code Playgroud)

列表还在继续,但我如何确定导致这些问题的原因?

我正在使用 New Relic 来监控 JVM,似乎只出现了一个错误,但它是一个重复出现的错误,org.apache.catalina.connector。客户端中止异常。是否有可能在用户会话中止时,创建的任何数据库连接或变量都没有关闭,从而成为孤立的?

有一个函数在每个 Web 应用程序中都被大量使用,不确定这是否与泄漏有关:

public static String replaceCharacters(String s)
{
    s = s.replaceAll("  ", " ");
    s = s.replaceAll(" ", "_");
    s = s.replaceAll("\351", "e");
    s = s.replaceAll("/", "");
    s = s.replaceAll("--", "-");
    s = s.replaceAll("&", "and");
    s = …
Run Code Online (Sandbox Code Playgroud)

java memory tomcat memory-leaks

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

restFB发布为页面一步一步的工作示例

我在我的智慧结束,我似乎无法发布消息作为页面,我可以作为管理员用户发布到Facebook页面,但不作为所有者本身发布到页面.

我的代码如下:

String MY_APP_ID = "xxxx";
String MY_APP_SECRET = "xxxx";

AccessToken accessToken = new DefaultFacebookClient().obtainAppAccessToken(MY_APP_ID, MY_APP_SECRET);
DefaultFacebookClient facebookClient = new DefaultFacebookClient(accessToken.getAccessToken());

FacebookType publishMessageResponse = facebookClient.publish("me/feed", FacebookType.class, Parameter.with("message", fbMessage));

fbMessageID = publishMessageResponse.getId();
Run Code Online (Sandbox Code Playgroud)

我相信上面的代码获得了App Access令牌,但是我收到以下错误:

OAuthException: An active access token must be used to query information about the current user.
Run Code Online (Sandbox Code Playgroud)

我有以下权限设置:

publish_actions, manage_pages, publish_stream
Run Code Online (Sandbox Code Playgroud)

如果我将代码修改为:

FacebookType publishMessageResponse = facebookClient.publish("MYAPPNAME/feed", FacebookType.class, Parameter.with("message", fbMessage));
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

OAuthException: (#200) The user hasn't authorized the application to perform this action.
Run Code Online (Sandbox Code Playgroud)

我已经阅读了很多这方面的内容,但看不到木头的树木,有人可以解释我哪里出错了,以及如何解决这个噩梦.

任何帮助将非常感激 :-)

java jsp facebook restfb

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

如何将 C# MVC5 Global.asax 迁移到 ASP.NET Core Startup.cs

有人可以演示如何在 ASP.NET Core 中成功声明依赖于主机名的静态项目变量吗?

以前,我有类似于下面的代码,使用 Global.asax 来识别项目运行的主机名,并设置整个项目可以使用的一些简单的静态变量,如“MvcApplication.Colour”

public static string Colour;

public static string ConnectionString;

public static string HostName = System.Web.Hosting.HostingEnvironment.ApplicationHost.GetSiteName().ToLower();

protected void Application_Start()
{
    AreaRegistration.RegisterAllAreas();
    FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
    RouteConfig.RegisterRoutes(RouteTable.Routes);
    BundleConfig.RegisterBundles(BundleTable.Bundles);

    ProjectSettings();
}

public static void ProjectSettings()
{
    switch (HostName)
    {
        case "external-domain":
            ConnectionString = WebConfigurationManager.ConnectionStrings["External"].ToString();
            Colour = "blue";
            break;
        case "internal-domain":
            ConnectionString = WebConfigurationManager.ConnectionStrings["Internal"].ToString();
            Colour = "purple";
            break;
        default:
            ConnectionString = WebConfigurationManager.ConnectionStrings["Test"].ToString();
            Colour = "red";
            break;
    }
}
Run Code Online (Sandbox Code Playgroud)

我见过将 AppSetting 传递给 HomeController 的示例,例如:

public class HomeController : Controller
{
    private readonly …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc-5 asp.net-core

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

MVC 5 Identity 2.0注册电子邮件确认问题

有人可以查看以下代码,看看是什么导致错误"处理您的请求时出错".我使用的是ASP.NET Identity 2.0,请参阅下面的代码:

IdentityConfig

public class EmailService : IIdentityMessageService
{
    public Task SendAsync(IdentityMessage message)
    {
        // Plug in your email service here to send an email.
        var credentialUserName = "info@ourdoamin.com";
        var sentFrom = "noreply@ourdoamin.com";
        var pwd = "ourpassword";

        // Configure the client:
        System.Net.Mail.SmtpClient client = new System.Net.Mail.SmtpClient("mail.ourdoamin.com");

        client.Port = 25;
        client.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
        client.UseDefaultCredentials = false;

        // Creatte the credentials:
        System.Net.NetworkCredential credentials = new System.Net.NetworkCredential(credentialUserName, pwd);
        client.EnableSsl = false;
        client.Credentials = credentials;

        // Create the message:
        var mail = new …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc-5 asp.net-identity-2

3
推荐指数
2
解决办法
8075
查看次数