小编nee*_*eel的帖子

如何将参数传递给mvc 4中的局部视图

我有这样的链接:

 <a href='Member/MemberHome/Profile/Id'><span>Profile</span></a>
Run Code Online (Sandbox Code Playgroud)

当我点击它时,它会调用这个部分页面:

 @{
    switch ((string)ViewBag.Details)
    {

        case "Profile":
        {
           @Html.Partial("_Profile"); break;
        }

    }
}
Run Code Online (Sandbox Code Playgroud)

部分页面_Profile包含:

Html.Action("Action", "Controller", model.Paramter) 
Run Code Online (Sandbox Code Playgroud)

例:

@Html.Action("MemberProfile", "Member", new { id=1 })   // id is always changing
Run Code Online (Sandbox Code Playgroud)

我怀疑的是我如何将这个"Id"传递给model.parameter部分

我的控制器是:

 public ActionResult MemberHome(string id)
    {
        ViewBag.Details = id;
        return View();
    }
  public ActionResult MemberProfile(int id = 0)
    {
        MemberData md = new Member().GetMemberProfile(id);
        return PartialView("_ProfilePage",md);
    }
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc partial-views razor asp.net-mvc-4

145
推荐指数
4
解决办法
24万
查看次数

执行Insert命令并在Sql中返回插入的Id

嗨我在MVC4中使用C#将一些值插入到sql表中.实际上我想插入值并返回最后插入记录的"ID".我使用以下代码.

public class MemberBasicData
{
    public int Id { get; set; }
    public string Mem_NA { get; set; }
    public string Mem_Occ { get; set; }     
}
Run Code Online (Sandbox Code Playgroud)

插入时,ID在数据库中自动递增.

public int CreateNewMember(string Mem_NA, string Mem_Occ )
{
    using (SqlConnection con=new SqlConnection(Config.ConnectionString))
    {
        using(SqlCommand cmd=new SqlCommand("INSERT INTO Mem_Basic(Mem_Na,Mem_Occ) VALUES(@na,@occ)",con))
        {
            cmd.Parameters.AddWithValue("@na", Mem_NA);
            cmd.Parameters.AddWithValue("@occ", Mem_Occ);
            con.Open();

            int modified = cmd.ExecuteNonQuery();

            if (con.State == System.Data.ConnectionState.Open) con.Close();
                return modified;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我知道ExecuteNonQuery表示影响行的数字.而不是我使用

int modified = (int)cmd.ExecuteScalar();
Run Code Online (Sandbox Code Playgroud)

但不行.请帮我解决这个问题.是否有任何代码,如cmd.ExecuteInsertAndGetID()(不使用我的代码).

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

94
推荐指数
3
解决办法
23万
查看次数

MVC4中的Global.asax.cs页面中的问题

我的ASP.NET MVC 4项目,我的Global.asax.cs页面显示错误

 WebApiConfig.Register(GlobalConfiguration.Configuration);
Run Code Online (Sandbox Code Playgroud)

"GlobalConfiguration"这个名称在当前上下文中不存在

我做了很多控制器和视图以及所有......我如何解决这个问题并恢复我的项目?

这是我的上下文代码的其余部分

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Http;
using System.Web.Mvc;
using System.Web.Routing;

namespace .....
{
    // Note: For instructions on enabling IIS6 or IIS7 classic mode, 
    // visit http://go.microsoft.com/?LinkId=9394801
    public class MvcApplication : System.Web.HttpApplication
    {
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();

            WebApiConfig.Register(GlobalConfiguration.Configuration);
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

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

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

使用C#按创建日期降序获取目录中的文件列表

我希望使用C#获取按创建日期排序的文件夹中的文件列表.

我使用以下代码:

        if(Directory.Exists(folderpath))
        {
            DirectoryInfo dir=new DirectoryInfo (folderpath);
            FileInfo[] files = dir.GetFiles().OrderBy(p=>p.CreationTime).ToArray();
            foreach (FileInfo file in files)
            {
              ......
            }
        }
Run Code Online (Sandbox Code Playgroud)

这将给出创建时间的升序.我实际上想要在我的数组的第一个位置(降序)获取最近创建的文件.

c# file

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

单元测试和实体框架

我是EF的新手,我想知道用SQL Server数据库创建EF的最佳方法是什么.之后我想测试CRUD操作.EF是以TDD方式实现的,我对这些存储库模式,模拟上下文,假模式等感到困惑.

EF中的CRUD操作,会测试所有内容吗?(DbContext,SaveChanges()......需要测试吗?)

那么任何想法如何使用基于Entity Framework的组件进行单元测试?(我在Visual Studio 2012,ASP.NET MVC4中检查所有这些)

c# unit-testing entity-framework repository-pattern asp.net-mvc-4

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

读者可以为Nulllable的整数值

我们如何从Sql Data Reader读取整数空值

SqlDataReader reader = cmd.ExecuteReader();
if (reader.Read() == true)
{
    mb.Id = (int)reader["Id"];
    mb.Mem_NA = (string)reader["Mem_NA"];
    mb.Mem_ResAdd4 = reader["Mem_ResAdd4"] == System.DBNull.Value ? null : (string)reader["Mem_ResAdd4"];
    //
   mb.Mem_ResPin = reader["Mem_ResPin"] as  int? ?? default(int);
  // shows the error "Object cannot be cast from DBNull to other types."
 }
Run Code Online (Sandbox Code Playgroud)

mb.Mem_ResPin无法从读者那里读到

 CREATE TABLE [dbo].[Mem_Basic] (
[Id]          INT           IDENTITY (1, 1) NOT NULL,
[Mem_NA]      VARCHAR (100) NOT NULL,
[Mem_ResAdd4] VARCHAR (100) NULL,
[Mem_ResPin]  INT           NULL,
PRIMARY KEY CLUSTERED ([Id] ASC)
);
Run Code Online (Sandbox Code Playgroud)

c# sql

9
推荐指数
3
解决办法
7780
查看次数

在visual studio 2012中对CRUD操作进行单元测试

我正在测试Visual Studio 2012中的create类

我的控制器类是:

  public ActionResult Create()
    {
        return View();
    }

    //
    // POST: /Member/Create

    [HttpPost]
    public ActionResult Create(Member member)
    {
        if (ModelState.IsValid)
        {
            db.Members.Add(member);
            db.SaveChanges();
            return RedirectToAction("Index");
        }

        return View(member);
    }
Run Code Online (Sandbox Code Playgroud)

测试类是:

[TestClass]
public class MemberTest
{

    [TestMethod]
    public void Create(Member mem)
    {
        mem.MemID = 123;
        mem.MemName = "sruthy";


        /// dont know what is writing.

    }
}
Run Code Online (Sandbox Code Playgroud)

SampleDataContext.cs

public class SampleDataContext:DbContext
{
    public DbSet<Member> Members { get; set; }
    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
    }
}
Run Code Online (Sandbox Code Playgroud)

我被困在测试用例中请帮助我.

c# unit-testing entity-framework asp.net-mvc-4

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

在Html.BeginForm MVC4控制器动作中传递多个参数

我有这样的事情:

   public ActionResult ImageReplace(int imgid,HttpPostedFileBase file)
    {
        string keyword = imgid.ToString();
        .......
    }
Run Code Online (Sandbox Code Playgroud)

在我的.cshtml中:

   @model Models.MemberData
   @using (Html.BeginForm("ImageReplace", "Member", FormMethod.Post,
            new { imgid = @Model.Id, enctype = "multipart/form-data" }))
        { 
     <input type="file" name="file" id="file" value="Choose Photo"  /> 
     <input type="submit" name="submit" value="Submit" />
    }
Run Code Online (Sandbox Code Playgroud)

这里imgid的值没有传递给控制器​​动作.显示错误,参数字典包含参数'imgid'的非可空类型'System.Int32'的空条目,用于方法'System.Web.Mvc.ActionResult ImageReplace

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

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

使用c#在mvc4中使用viewbag数据的下拉列表

嗨,我想填写我的视图页面中的下拉列表,我的代码是

public class MemberBasicData
{
    public int Id { get; set; }
    public string Mem_NA { get; set; }
    public string Mem_Occ { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

//控制器

  public ActionResult Register()
    {
        var users = new Member().GetAllMembers();
        ViewBag.Users = users;   
        return View();
    }
Run Code Online (Sandbox Code Playgroud)

//视图

 @model IEnumerable<....Members.Models.MemberBasicData>
 @Html.DropDownListFor(model => model.Mem_Na, (SelectList)ViewBag.Users, "--Select Users--")
Run Code Online (Sandbox Code Playgroud)

我想将Mem_NA添加到dropdownlist,Viewbag包含所有用户详细信息.问题出现在View页面中.model.Mem_Na中显示错误.请帮我解决这个问题.

c# html5 asp.net-mvc-4

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

验证 Windows 窗体问题中文本框上的数字 INTEGER

我在 Windows 窗体上有文本框,我只想在此文本框中插入数字。为此我使用以下 c# 代码

private void ChildAge_TextChanged(object sender, EventArgs e)
{
    int i;
    if (!int.TryParse(ChildAge.Text, out i))
    {
        MessageBox.Show("Plaese enter a valid Age");
    }    
}
Run Code Online (Sandbox Code Playgroud)

它正在工作,但问题是,在显示消息后,当我退格时,内容和文本框变为,在这种情况下,此消息框也会再次显示

c# winforms

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