小编Elu*_*FTW的帖子

MVC部分视图渲染Bootstrap 3选项卡更改

我在我的mvc视图中使用bootstrap 3选项卡.我想在标签更改上呈现另一个局部视图.这是选项卡的代码

<ul class="nav nav-tabs">
<li class="active" id="studentList">
    <a href="#tab_1_1" data-toggle="tab" aria-expanded="true">
        Student List </a>
</li>
<li class="" id="studentAddEdit">
    <a href="#tab_1_2" data-toggle="tab" aria-expanded="false">
        Student Add/Edit </a>
</li>
Run Code Online (Sandbox Code Playgroud)

<div class="tab-content">
<div class="tab-pane fade active in" id="tab_1_1">
    <p>                                          
    @Html.Action("StudentList","Student")
    </p>
</div>
<div class="tab-pane fade" id="tab_1_2">
    <p>
    @Html.Action("StudentAddEdit","Student", new {id=Model.StudentId})
    </p>
</div>
Run Code Online (Sandbox Code Playgroud)

它呈现studentAddEdit视图加载视图.我想studentAddEdit在用户更改选项卡并选择studentAddEdit选项卡时再次呈现视图.有建议的解决方案 我目前正在使用jquery但没有成功.

javascript asp.net-mvc jquery twitter-bootstrap

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

如何删除表中的td

如何td使用MVC4 删除表格中的单元格?

我可以使用JQuery还是JavaScript?如果是这样,怎么样?

<table class="table table-striped table-bordered table-hover" id="tblParticipantList">
    <thead>
        <tr>
            <th>Name</th>
            <th>Adress</th>
            <th>Redeem Code</th>
        </tr>
    </thead>
    <tbody>
        <tr data-id="columnId" id="customerPartial_94">
            <td data-field="NAME">Attn Donna</td>
            <td data-field="ADDRESS">3046 Lavon Drive Newyork America 7504</td>
            <td data-field="SECURITY_REDEMPTION_CD"></td>
        </tr>
        <tr data-id="columnId" id="customerPartial_95">
            <td data-field="NAME">F 1 La 1</td>
            <td data-field="ADDRESS">Asd 1 s 1 Ci 1 s</td>
            <td data-field="SECURITY_REDEMPTION_CD"></td>
        </tr>
    </tbody>
</table>
Run Code Online (Sandbox Code Playgroud)

html javascript jquery html5 asp.net-mvc-4

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

设置Hangfire成功作业到期属性不起作用

我正在使用Hangfire执行作业,并且我想更改一天后从数据库中删除成功作业的行为-我希望将它们存储一年。

按照此线程中的指示(与该SO问题中的指示相同),我创建了一个类:

public class OneYearExpirationTimeAttribute : JobFilterAttribute, IApplyStateFilter
{
    public void OnStateUnapplied(ApplyStateContext context, IWriteOnlyTransaction transaction)
    {
        context.JobExpirationTimeout = TimeSpan.FromDays(365);
    }

    public void OnStateApplied(ApplyStateContext context, IWriteOnlyTransaction transaction)
    {
        context.JobExpirationTimeout = TimeSpan.FromDays(365);
    }
}
Run Code Online (Sandbox Code Playgroud)

然后在Asp.net Web API启动类中将其注册为全局过滤器:

public class Startup
{
    public void Configuration(IAppBuilder app)
    {
        // ... other stuff here ...
        GlobalJobFilters.Filters.Add(new OneYearExpirationTimeAttribute());
        GlobalConfiguration.Configuration.UseSqlServerStorage("HangFireDBConnection");
        app.UseHangfireDashboard();
    }
}
Run Code Online (Sandbox Code Playgroud)

Web api是发布作业(即调用BackgroundJob.Enqueue(() => ...)发生)的地方。我尚未更改执行实际作业的客户端的配置。

如果我现在发布一项作业并成功完成,则该有效期仍为一天,如您在屏幕截图中所见,该屏幕截图同时显示了仪表板和HangfireDb中的条目,

在此处输入图片说明

我做错了什么或我想念什么?

c# hangfire

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

在整个应用程序中可以访问的最佳数据(可能在运行时更改)?

在整个应用程序中访问数据的最佳方法是什么?在我的具体示例中,我将应用程序的设置从XML文件加载到Settings-Object的实例中,我不想让这些设置为绝对常量,因为用户应该能够更改这些(并查看效果) )无需重新启动程序.

现在,我需要在其他类的方法中使用某些(属性)设置,但是这样它们是不可访问的.那么我应该在什么样的"对象"中存储设置?我不认为在我的应用程序中需要设置的每个方法都必须查看XML本身.此外,将设置实例传递给我使用的每个其他类似乎太麻烦了.

提前致谢!

c#

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

从字符串中读取double值

我试图解决这个问题几个小时,绝对不明白编译器在这里做了什么.我有基本上看起来像这样的字符串:

"KL10124 Traitor #2 - +XX-+0.25 - More Stuff"
Run Code Online (Sandbox Code Playgroud)

并需要以编程方式读取双"0.25".调用s以上的字符串,以下两行不起作用:

string[] h = s.Split('-');
string h2 = h[2].Substring(1,h[2].Length - 2);
double d = Convert.ToDouble(h2);
Run Code Online (Sandbox Code Playgroud)

如果我显示d的输出是"25".我认为这可能取决于'.' resp','文化依赖,但如果我插入

double d = Convert.ToDouble(h2.Replace('.',','));
Run Code Online (Sandbox Code Playgroud)

它没有改变一件事,输出仍然是"25".

但最后,如果我执行如下的强力方法,我会在屏幕上得到逐字输出"0,25"

double d;
string[] h = s.Split('-');
string h2 = h[2].Substring(1,h[2].Length - 2);
if (h2.Contains("."))
{
    string[] h3 = h2.Split('.');
    d = Convert.ToDouble(h3[0]) + Convert.ToDouble(h3[1])/100;
}
else
{
    d = Convert.ToDouble(h2);
}
return d;
Run Code Online (Sandbox Code Playgroud)

为什么前两个版本不起作用?最后一点代码不是正确的方法.

.net c# double

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

如何在ios中使用UIImageView + AFNetworking异步加载图像

我用这个:

UIImage *image = [UIImage imageWithData: [NSData dataWithContentsOfURL: [NSURL URLWithString:@"http://oldmaker.com/glamberry_v2/ios_Loading-Spinners.gif"]]];
Run Code Online (Sandbox Code Playgroud)

但这花费了太多时间.我想用来AFNetworking加快加载速度.

任何帮助,将不胜感激.

objective-c uiimage ios afnetworking

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

在Caliburn.micro中切换Viewmodels/Views的简单方法

几天前我问了这个问题,但是答案让我更加困惑.所以我会问一个更简单的问题:

(我正在使用Caliburn.Micro,这是一个WPF应用程序).假设您有一个MainView/MainViewModel,其中有AView/AViewModel和BView/BViewModel.您的MainView是一个网格,并且您希望使用AView或BView填充其中一个单元格,具体取决于用户选择.如果我只想展示AView,我会做以下事情:

在MainView中:

<StackPanel Name="SP_Controls" VerticalAlignment="Bottom" Grid.Row="1" Grid.Column="0">
    <ContentControl Name="ViewModelToShow" Margin="10" />
</StackPanel> 
Run Code Online (Sandbox Code Playgroud)

并在MainViewModel中:

public AViewModel ViewModelToShow{get; set;}
Run Code Online (Sandbox Code Playgroud)

我天真的想法现在就是做这样的事情:

private AViewModel _AVM;
private BViewModel _BVM;

public ... ViewModelToShow{ get; set;}
Run Code Online (Sandbox Code Playgroud)

然后在代码中,例如,将viewmodel设置为显示:

ViewModelToShow = _BVM; 
Run Code Online (Sandbox Code Playgroud)

我唯一的问题是"...",因为每个ViewModel属于不同的类.有没有办法用泛型来做这个,或者我应该为我投射它的ViewModel定义一个基类?但是,如果我这样做,他们仍然会正确显示.谢谢.

wpf mvvm caliburn.micro

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

C#扩展方法和保护级别?

我正在尝试为MVC控制器类编写扩展方法,因为我在程序中反复看到这样的代码:

if (viewModel == null)
{
    return HttpNotFound();
}
return View(viewModel);
Run Code Online (Sandbox Code Playgroud)

我的想法是,我想要一个调用的扩展方法ViewModelResult()来处理这个问题,因此它将返回一个ActionResult或一个HttpNotFound结果,具体取决于视图模型是否可用.这样,我不必每次都写这3-4行代码.

但是,似乎方法View()HttpNotFound()MVC控制器的保护级别造成了一些严重的麻烦.我已经编写了如下代码,但它不起作用:

public static class ExtensionController
{
    public static ActionResult ViewModelResult(this Controller controller, ViewModel viewModel)
    {
        if (viewModel == null)
        {
            return controller.HttpNotFound();
        }
        return controller.View(viewModel);
    }
}
Run Code Online (Sandbox Code Playgroud)

它抛出错误消息,例如"System.Web.MVC.Controller.View()由于其保护级别而无法访问".这让我感到困惑,我认为在扩展方法中,this关键字标记的对象的所有私有和受保护方法都是可访问的,就像在此类中编写方法一样.但我被证明是错误的,那些非公开的方法在扩展方法中是不可访问的.

现在问题是,我怎样才能解决这个问题?我有点无能,不知道我能做些什么.MVC控制器类在.NET框架内,我无法修改源代码.不建议不要改变.NET框架的内部实现.有人可以帮忙吗?在这种情况下,你建议我做什么?

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

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

什么时候在这种情况下实例化对象?

我曾多次对这种形式的烦恼感到磕磕绊绊,所以我的问题是:代码场景的最佳模式/实践如下所示?

这是我最近写的方法体的一个例子:

public HashSet<char> SomeCharacters(IEnumerable<string> _hashes){

    HashSet<char> Result = new HashSet<char>();
    bool _firstpass = true;

    foreach (string _hash in _hashes) {
        if (_firstpass) {
            Result = new HashSet<char>(_hash);
            _firstpass = false;
        }
        else {
            // ...
            // some code that uses Result
        }
    }
    return Result;
}
Run Code Online (Sandbox Code Playgroud)

这很好,但令我讨厌的是第一行

HashSet<char> Result = new HashSet<char>();

我本能地喜欢替换它HashSet<char> Result;.编译器不会让我,因为else块使用Result它不识别为instanciated,虽然我知道它将在else块执行时.

上面的方法迫使我创建Result两次,这不是很好的原因(性能,代码美学,......).

请将此问题视为有关此类情况的问题,而不仅仅是针对此特定示例.谢谢!

c# design-patterns

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

无法从linq c#query中的查询推断出类型参数

下面是我的linq代码

mTimeslot = (from users in mContext.MFUsers
             join tblTime in mContext.tblTimeslots on users.UserID equals tblTime.varAdvisorId
             join tblApp in mContext.tblAppointments on new { varAdvisorId=users.UserID,tblTime.varSlotId} equals new {tblApp.varAdvisorId, varSlotId = tblApp.varSlotId}
             select new Timeslot
             {
                 varAdvisorId = users.UserID,
                 varAdvisorName = users.varUserName
             }).FirstOrDefault();
Run Code Online (Sandbox Code Playgroud)

在第二个连接中,我收到一条错误,指出无法从查询中推断出类型参数.

tblTime.varSlotId是一个整数,tblApp.varSlotId而是一个可以为空的整数.我可以弄清楚错误是在上面提到的列中.但是我无法将整数值转换为可以为空的整数,因为两列的名称都是varSlotId.

c# linq

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

为什么我被告知我的模型属性(id)不存在,什么时候呢?

我有一个RegimeItemID我在控制器中使用的模型属性.但是,当我试图调用它时,它会给出一个它不存在的错误.我做错了什么?

调节器

public ActionResult ExerciseIndex(int? id, UserExerciseViewModel vmodel)
        {
            User user = db.Users.Find(id);
            //user.RegimeItems = ChosenExercises();

            UserExerciseViewModel model = new UserExerciseViewModel { AvailableExercises = GetAllExercises(), RequestedExercises = ChosenExercises(user, vmodel) };
            //user.RegimeItems = db.RegimeItems.Find(model.SelectedExercise);
            user.RegimeItems = model.RequestedExercises;
            return View(model);
        }

private List<RegimeItem> ChosenExercises(User user, UserExerciseViewModel model)//RegimeItem regimeItem)//User user, RegimeItem regimeItem)
        {
            return db.Users.Where(r => r.RegimeItems.RegimeItemID == user.UserID).ToList();
        }
Run Code Online (Sandbox Code Playgroud)

楷模

 public class User
    {
        public int UserID { get; set; }
        public ICollection<RegimeItem> RegimeItems { get; set; }
        public User() …
Run Code Online (Sandbox Code Playgroud)

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

-1
推荐指数
1
解决办法
77
查看次数