小编Sil*_*agy的帖子

添加语言(LTR/RTL)机制来捆绑MVC 4

背景

  • 我正在建立一个多语言系统
  • 我正在使用MVC 4捆绑功能
  • 我有从右到左(RTL)和从左到右(LTR)语言的不同JavascriptsStyles文件

目前我处理这种情况如下:

BundleConfig文件

 //Styles for LTR 
 bundles.Add(new StyleBundle("~/Content/bootstarp").Include(
                "~/Content/bootstrap.css",
                "~/Content/CustomStyles.css"));

 // Styles for RTL
 bundles.Add(new StyleBundle("~/Content/bootstrapRTL").Include(
            "~/Content/bootstrap-rtl.css",
            "~/Content/CustomStyles.css"));

 //Scripts for LTR
 bundles.Add(new ScriptBundle("~/scripts/bootstrap").Include(
            "~/Scripts/bootstrap.js",
            "~/Scripts/CmsCommon.js"
            ));

 //Scripts for RTL
 bundles.Add(new ScriptBundle("~/scripts/bootstrapRTL").Include(
            "~/Scripts/bootstrap-rtl.js",
            "~/Scripts/CmsCommon.js"
            ));
Run Code Online (Sandbox Code Playgroud)

在意见中实施:

@if (this.Culture == "he-IL")
{
    @Styles.Render("~/Content/bootstrapRTL")
}
else
{
    @Styles.Render("~/Content/bootstrap")
}
Run Code Online (Sandbox Code Playgroud)

问题:

我想知道是否有更好的方法来实现它,我希望:

处理检测哪种文化并在捆绑中拉出正确文件的逻辑(代码隐藏)不在视图中.

所以在视图中我所要做的就是调用一个文件.

如果我在视图中保留逻辑,则意味着我将不得不在每个视图中处理它.我想避免它.

css c# asp.net-mvc bundle

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

当前上下文中不存在名称"con"

我正在尝试使用LINQ创建一个group by语句.我收到错误当前上下文中不存在名称'con'.

在select之后的代码中,我试图获取ActivityID值,但列表'con'不可用.

List<Contribution> contributions =
    contLogic.GetAllContibutionsByActivityIDToList(ActivityID);

var groups = from con in contributions
             group con by con.Response
             into gResponse
             select new
             {
                grop = gResponse.Count(),
                con.ActivityID
             };
Run Code Online (Sandbox Code Playgroud)

我看过微软的样本,我不知道我做错了什么.

微软示例:

List<Product> products = GetProductList();

var orderGroups = from prod in products
                  group prod by prod.Category into prodGroup
                  select new { Category = prodGroup.Key, Products = prodGroup };

ObjectDumper.Write(orderGroups, 1);
Run Code Online (Sandbox Code Playgroud)

c# linq

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

更新具有特定值的数据库行

我需要更新存在特定值的行.该ExecuteNonQuery返回0这意味着数据库未更新.在调试中单步执行时,将触发更新并包含正确的值,但不会进行任何更新.

string verifySql = @"UPDATE UserInfo SET Verified='@Verified' 
WHERE UserID='@UserID'";

using (var con = newSqlConnection(
ConfigurationManager.ConnectionStrings["UserInfoDB"].ConnectionString))

 using (var cmd = new SqlCommand(verifySql, con))
{
        con.Open();
        cmd.Parameters.AddWithValue("@Verified", "Verified " + DateTime.Now);
        cmd.Parameters.AddWithValue("@UserID", user.UserId);
        Response.Write(cmd.ExecuteNonQuery());
        con.Close();
}
Run Code Online (Sandbox Code Playgroud)

sql asp.net

0
推荐指数
1
解决办法
52
查看次数

标签 统计

c# ×2

asp.net ×1

asp.net-mvc ×1

bundle ×1

css ×1

linq ×1

sql ×1