小编Bri*_*ian的帖子

如何在cshtml中检查null/empty值

<b>Start Date: </b>@employee["StartDate"].<br />
Run Code Online (Sandbox Code Playgroud)

使用MVC Razor 3/C#,如何employee["StartDate"]在cshtml中检查值是否为空/空?所以,如果是,我反而显示:

<b>Start Date: </b>Unknown.<br />
Run Code Online (Sandbox Code Playgroud)

我试过了:

@if(employee["StartDate"] == null){<b>Start Date: </b>Unknown.<br />} 
Run Code Online (Sandbox Code Playgroud)

但这不起作用.

c# visual-studio-2010 razor asp.net-mvc-3

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

使用 Visual C# 将图像添加到 SQL 数据库

我正在开发一个用于图像处理的可视化 C# 程序。我正在尝试使用 Visual C#(Windows 窗体)和 ADO.NET 将图像添加到 sql 数据库。

我已使用文件流方法将图像转换为二进制形式,但图像字节未保存在数据库中。在数据库图像列,它显示 < 二进制数据 > 并且没有数据被保存!

我尝试了很多插入方法(有和没有存储过程......等),但总是在数据库中得到同样的东西。

private void button6_Click(object sender, EventArgs e)
{
   try
   {
      byte[] image = null;
      pictureBox2.ImageLocation = textBox1.Text;
      string filepath = textBox1.Text;
      FileStream fs = new FileStream(filepath, FileMode.Open, FileAccess.Read);
      BinaryReader br = new BinaryReader(fs);
      image = br.ReadBytes((int)fs.Length);
      string sql = " INSERT INTO ImageTable(Image) VALUES(@Imgg)";
      if (con.State != ConnectionState.Open)
         con.Open();
      SqlCommand cmd = new SqlCommand(sql, con);
      cmd.Parameters.Add(new SqlParameter("@Imgg", image));
      int x= cmd.ExecuteNonQuery();
      con.Close();
      MessageBox.Show(x.ToString() + "Image …
Run Code Online (Sandbox Code Playgroud)

c# sql sql-server asp.net winforms

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

为什么需要双冒号(::)运算符来解决名称空间冲突?

请参阅我下面的示例程序。我有两个包含相同名称空间struct。为了避免在中使用时发生冲突Main(),我给了命名空间别名。在调用structfrom时Main(),我可以直接通过名称空间别名(例如)进行调用test.MyStruct。我还有另一个使用::运算符的选项,例如test::MyStruct

为什么::需要运算符,在哪里应该使用它代替别名?

using System;
using test=counter;
using duplicatecounter;

namespace counter
{
    struct MyStruct
    {

    }
}

namespace duplicatecounter
{
    struct MyStruct
    {

    }
}

class Program
{
    public static void Main()
    {
        test.MyStruct a = new test.MyStruct();
        test::MyStruct a1 = new test::MyStruct();
    }
}
Run Code Online (Sandbox Code Playgroud)

.net c# namespaces

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

无法编译结构

以下代码表明我不能在结构中使用隐式属性:

public struct LimitfailureRecord
{
   public LimitfailureRecord(string sampleCode)
   {
      SampleCode = sampleCode;
   }

   public string SampleCode {get; set;}
   {
   }
}
Run Code Online (Sandbox Code Playgroud)

它无法编译,并显示错误消息

"在将控制权返回给调用者之前,必须完全分配自动实现的属性'blahblah.LimitfailureRecord.SampleCode'的后备字段.考虑从构造函数初始化程序调用默认构造函数."

如果我将结构更改为类,那很好.我需要做什么才能使它作为结构工作?如果我可以避免它,我宁愿不去支持字段的长度(这是真正代码的严重剥离版本).

c#

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

使用C#将一些数据插入多个表

我试图一次将一些数据插入2个表中,但是我的代码遇到的问题是...我一次只能插入一个表。如果我注释掉第一个插入语句,那么第二个插入将起作用,反之亦然。

这是我的代码

 SqlCommand cmd = new SqlCommand("select Name from MainTable where Name= '" + Name+ "'  ", sqlcon);
 SqlDataReader dr = cmd.ExecuteReader();
 if (dr.Read())
 {
    lblmsg.Text = "We are already have  this Name" + Name;
 }

 else
 {
    dr.Close();
    sqlcmd.CommandText = "INSERT INTO Table1(Name, Address) VALUES(@Name, @Address)";
    sqlcmd.CommandText = "INSERT INTO Table2(Company, Address2) VALUES(@Company, @Address2)";

    sqlcmd.Parameters.Clear();
    sqlcmd.Parameters.Add("@Name", SqlDbType.VarChar).Value = Name;
    sqlcmd.Parameters.Add("@Address", SqlDbType.VarChar).Value = Address;
    sqlcmd.Parameters.Add("@Company", SqlDbType.VarChar).Value = Company
    sqlcmd.Parameters.Add("@Address2", SqlDbType.VarChar).Value = Address2;

    sqlcmd.Connection = sqlcon;
    sqlcmd.ExecuteNonQuery();

    DV_NameAdd.ChangeMode(DetailsViewMode.ReadOnly);
    sqlcon.Close();
 }
 sqlcon.Close();
Run Code Online (Sandbox Code Playgroud)

c# asp.net

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

为什么完全合格的C#导入失败?

在我的主要方法中,我有一行代码 -

WebRequest reqObj = WebRequest.Create(CompleteDPath + FileName);
Run Code Online (Sandbox Code Playgroud)

我添加了一个导入 - System.Net.WebRequest.这会导致错误:

找不到类型或命名空间名称'YourProject'(您是否缺少using指令或程序集引用?).

当我将导入更改为" System.Net为什么会发生这种情况" 时,错误消失了 ?

实际上,我在SSIS的C#脚本任务中使用此代码,这是一个ETL工具.我提到,如果您无法在普通的视觉工作室中复制问题,并希望将SSIS声明为问题的根源.

.net c#

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

在Informix DB中将字符串转换为日期

我需要转换一个字符串说'12/12/2013 14:30:56.583'要在Informix数据库中转换为日期格式,如2013-12-12 14:30:56.583.

我使用了以下功能

to_date('12/12/2013 14:30:56.583',"%d/%m/%Y %H:%M:%S.")    
Run Code Online (Sandbox Code Playgroud)

但它不接受毫秒,毫秒对结果值很重要.

sql informix

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

创建使用一个foreach而不是多个的方法

我正在使用c#,我有工作代码,我在每行重复相同的代码,这是因为我正在创建列表,转换,提取数据等.

所以我有多个foreach子句,多个lists,多个转换listdatatables.我的问题是,为了获得干净的代码,我该怎么做才能重新分解这个?

码:

private void BtnLoadReport_Click(object sender, EventArgs e)
{
   var db = new SQLDataMgr();

   List<string> DesignStatusList = new List<string>();
   List<string> ShopStatusList = new List<string>();
   List<string> CustomerTypeList = new List<string>();
   List<string> CustomerList = new List<string>();
   List<string> ResellerList = new List<string>();
   List<string> StateList = new List<string>();
   List<string> ProjectManagerList = new List<string>();
   List<string> SalesRepresentativeList = new List<string>();

   var checkedDesignStatus = cboDesignStatus.CheckBoxItems.Where(x => x.Checked);
   var checkedShopStatus = cboShopStatus.CheckBoxItems.Where(x => x.Checked);
   var checkedCustomerType = cboShopStatus.CheckBoxItems.Where(x => …
Run Code Online (Sandbox Code Playgroud)

c# winforms

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

验证所需的两个字段之一

我有两个字段:

并且只需要其中之一。但如果两者都被省略,我希望两个字段都突出显示。如果填写其中之一,则模型没问题,表格应该提交。

如何才能做到这一点?

c# model-view-controller asp.net-mvc

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

在DataTable已有数据后设置自动编号

我有以下代码将自动编号列添加到DataTable:

public void AddAutoIncrementColumn(DataTable dt)
{
   DataColumn column = new DataColumn();
   column.DataType = System.Type.GetType("System.Int32");
   column.AutoIncrement = true;
   column.AutoIncrementSeed = 0;
   column.AutoIncrementStep = 1;
   dt.Columns.Add(column);
}
Run Code Online (Sandbox Code Playgroud)

但是,对于表中已有的所有行,此值将为空; 似乎只对添加此列后添加的新行触发AutoIncrement.有没有办法为已存在的行设置自动编号值?

c# datatable

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