我想这是非常直接的事情,但我不知道该怎么做.在我的控制器中我有:
public ViewResult ShowForm()
{
ViewBag.Title = Resources.ApplicationTitle;
ViewBag.LabelStatus = Resources.Status;
//Logo
ViewBag.Logo =@"C:\Images\Logo.png";
return View("ShowForm");
}
Run Code Online (Sandbox Code Playgroud)
在我看来,我试试这个:
<div id="drawForm">
<img src="@ViewBag.Logo" alt="Logo" />
</div>
Run Code Online (Sandbox Code Playgroud)
但是,当我运行这个时,我只得到"徽标"文本.
我正在研究'ASP.NET MVC 4'应用程序并使用'SimpleMembershipProvider'.该应用程序将在Intranet中使用,并且没有可供未授权用户使用的内容,因此我想在让用户访问实际站点内容之前强制登录.
我认为这应该是一项相当简单的任务,但这是我第一次实施这样的逻辑,而且我也希望这样做,MVC 4/SimpleMemebrship所以我寻求建议.
我认为应该实现的方式是首先在web.config中添加它:
<authentication mode="Forms">
<forms loginUrl="~/Account/Login" timeout="15" slidingExpiration="true" enableCrossAppRedirects="false" protection="All" />
</authentication>
Run Code Online (Sandbox Code Playgroud)
毕竟我不会采取允许匿名的行动所以我认为最好把它放在这里.
并将我的默认路由更改为:
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Account", action = "Login", id = UrlParameter.Optional }
);
Run Code Online (Sandbox Code Playgroud)
在我看来,这将是唯一允许匿名的行动.但是我有点担心将默认路由更改为Login我不确定这是否会导致一些意想不到的缺点.
我也有想法保留由创建的默认结构MVC 4 Internet Template,只是让控制器的Index动作Home承担责任,但我不喜欢这种情况,因为逻辑很清楚 - 用户必须登录才能获得任何类型的访问,甚至Home/Index在我的脑海中有一些访问权限.
那么实现这种行为的方式是什么?为实现这一目标,我应该采取哪些基本步骤和变更?
在我的应用程序中,我有一个文本框 - txtDiscount管理员可以为某个用户设置折扣百分比,或者他可能没有.在后端我想保存数据,所以现在我有这个:
double? discount = null;
if (!string.IsNullOrEmpty(txtDiscount.Text))
{
if (!double.TryParse(txtDiscount.Text, out discount)) errors.Add("Discount must be a double.");
}
Run Code Online (Sandbox Code Playgroud)
所以我得到了一个错误invalid argument,显然,discount如果我要使用它,它就不能为空TryParse.我看到很多人正在为这种情况进行扩展,但是现在我认为没有必要.我能想到的是使用另一个变量:
double? discount = null;
private double _discount;
if (!string.IsNullOrEmpty(txtDiscount.Text))
{
if (!double.TryParse(txtDiscount.Text, out _discount))
{
errors.Add("Discount must be adouble.");
}
else
{
discount = _discount;
}
}
Run Code Online (Sandbox Code Playgroud)
然后使用我的nullable discount将值传递给数据库.但实际上我不喜欢上面的代码,在我看来这个任务非常复杂,但我想不出更好的东西.那么如何在不使用扩展方法的情况下处理这种情况呢?
我正在尝试制作一个非常简单的逻辑游戏.我们的想法是看到一个带有一定数量的彩色方块(按钮)的矩阵然后隐藏它们,玩家必须点击彩色方块.因此,在绘制正方形/按钮和返回原始颜色之间需要2秒的延迟.所有代码都在button_click事件中实现.
private void button10_Click(object sender, EventArgs e)
{
int[,] tempMatrix = new int[3, 3];
tempMatrix = MakeMatrix();
tempMatrix = SetDifferentValues(tempMatrix);
SetButtonColor(tempMatrix, 8);
if (true)
{
Thread.Sleep(1000);
// ReturnButtonsDefaultColor();
}
ReturnButtonsDefaultColor();
Thread.Sleep(2000);
tempMatrix = ResetTempMatrix(tempMatrix);
}
Run Code Online (Sandbox Code Playgroud)
这是整个代码,但我需要的是在调用SetButtonColor()和调用之间有一些延迟ReturnButtonsDefaultColor().我所有的实验Thread.Sleep()到目前为止都没有成功.我在某个时刻得到延迟,但彩色方块/按钮从未显示过.
我很难连接到我的MS SQL Server,我找不到教程或回答如何做到这一点,即使我认为这应该是非常标准的东西.
我目前的设置是这个 - 我有新的Installed Visual Studio 2010和后续Beth Massi's文章Step-by-Step: Installing SQL Server Management Studio 2008 Express after Visual Studio 2010:http://blogs.msdn.com/b/bethmassi/archive/2011/02/18/step-by-step-installing-sql-server-管理工作室-2008-快车后视觉工作室2010.aspx
但是我无法连接到SQL Server.在我Configuration Tools\SQL Server Configuration Manager打开它时我看到了这个:

我设置为Enableall TCP\IP并且Named Pipes(只是看到这可能是一个问题)并且在SQL Server (SQLEXPRESS)from Services 的属性中我看到了:

我也在Log On标签中看到:

某种密码(我没有输入)似乎是默认的东西,但由于我不确定问题出在哪里,我试图展示我认为可能与解决问题有关的一切.
最后,我尝试了不同的选项连接到我的SQL Server表单,我最终得到了这个:

如您所见,我收到错误(包括在内以便能够阅读).我读了可能需要的机器名,所以我的用户帐户名是Xman,我的机器名是Xman-PC.虽然我的打印屏幕图像不是来自这个尝试,但是我试图再次连接到服务器XMAN-PC\SQLEXPRESS- 没有成功.
你能否指点我一个关于如何连接到MS SQL Server的好教程(我简直无法用简单的步骤解释你需要做什么来连接服务器)或者你能告诉我如何设置 - 我的配置,所以我实际上可以开始使用数据库?
PS
忘记提入in Command Prompyt- sqlcmd命令也返回错误 - Could …
我正在使用本地机器(ASP.NET MVC 4应用程序),但现在我想开始使用公司的SQL服务器,所以我需要更改连接字符串以便将我连接到该远程服务器.
设置如下:
Microsoft SQL Server Management Studio用来连接到远程服务器时,我使用与用于连接VPN的相同IP - xxx.xxx.xxx.xxx我有一个现有的连接字符串,我用它连接到我的电脑上的服务器,所以我认为只需改变那里的参数即可:
<add name="ProjectName.DAL.MyDbContext"
providerName="System.Data.SqlClient"
connectionString="Data Source=xxx.xxx.xxx.xxx;
Initial Catalog=DatabaseName;Integrated Security=True;
MultipleActiveResultSets=True;
user id=SQLUsername;password=SQLPassword;App=EntityFramework" />
Run Code Online (Sandbox Code Playgroud)
因此,工作连接字符串并将我连接到本地服务器的更改有两个:
Data Source= xxx.xxx.xxx.xxx - 我正在使用IP.在这里,我想知道IP本身是否足够.我应该使用http://xxx.xxx.xxx.xxx还是IP就可以了?user id=SQLUsername;pasword=SQLPassword- 我使用相同的用户名和密码Management studio,因为我可以通过提供xxx.xxx.xxx.xxx服务器名称和使用SQLUsername/SQLPassword 成功连接到删除服务器SQL Server Authentincation.所以要清楚 - 在Management Studio下我连接到远程服务器没有问题.但是,当我将连接字符串更改为我在上面发布的内容时,我的HomeController逻辑非常简单,只是为了检查是否执行了对数据库的调用:
private MyDbContext db = new MyDbContext();
//
// GET: /Home/
public ActionResult Index()
{
return View(db.Users.ToList()); …Run Code Online (Sandbox Code Playgroud) 现在我在youtube上观看斯坦福大学的频道,准确地说,我正在观看Mehran Sahami教授的Java讲座.我已经掌握了一定程度的Java理论知识,但我发现这些讲座非常有趣,但是有一件事让我困惑,我想在进一步说明之前澄清它.
在这些例子中,与我到目前为止在我阅读的书中看到的内容有很多不同,甚至在Sun的原始文档中也是如此.在这些讲座的主要方法,因为它似乎public void run()的insted的public static void main(String[] args).对于控制台输出,他只使用println(),而不是System.out.println()我建议要更深入地进入Java语言将有来自我所说的更differencies"的标准语法."
根据我的理解,所有这些都来自于使用ACM软件包,我真的不知道是否继续关注这对我有用,或者只是让我更加困惑.这个ACM包是否有一些实际用途?它是否使Java语法比平时更加不同,所以我最终会得到一堆无用的命令?您是否认为现在离开这些视频会更好,以后我可以使用有用的信息并更加了解过时的内容或者差异不是那么大?
提前致谢
Leron
我问这个问题是因为我很快就会专注于错误处理,但即使我作为一名初级C#开发人员已经有近7个月的时间,这也是我想不到的.
正如标题所说,我想知道处理异常形式的正确方法是什么,没有适当的错误处理程序.前段时间我听到我的一位同事正在讨论一般处理吮吸案例场景的通用异常处理程序(无论可能意味着什么).但是,我做了一些谷歌搜索我没有找到关于这样的事情的一些信息.
所以我的问题是 - 如何处理这些异常和我的子问题 - 是否真的有一种称为通用异常处理程序的东西?
我的包上只有几个项目.在以前的桌面应用程序中,当我想存储和使用某些特定于应用程序的信息时,我正在使用该app.config文件.
现在我在ASP.NET MVC 4应用程序上工作,我想再次存储一些特定于应用程序的信息,但这次我不确定.我有一个web.config文件似乎是一个很好的地方,但我不确定它是否是存储自定义信息的正确位置.
这样做的正确方法是什么?例如,我想保存并提取文件系统上目录的路径,我将保存所有文件.在ASP.NET MVC 4哪里/哪里是正确的地方?
我正在尝试用jQuery实现一些非常基本的(在我看来)功能.我有Delete链接:
<a href="/Delete" class="prompt-for-delete">Delete</a>
Run Code Online (Sandbox Code Playgroud)
而我想要的只是点击链接以显示某种确认窗口,如:
您确定要删除此内容:是/否
如果No单击,我想阻止链接执行.我使用jquery-1.10.2.min.js和
jquery-ui-1.10.3.min.js我的HTML是:
<div id="dialog-confirm" ></div>
<a href="/Delete" class="prompt-for-delete">Delete</a>
Run Code Online (Sandbox Code Playgroud)
我尝试了几种在互联网上找到的选项.最后一个是:
$(document).ready(function () {
$('.prompt-for-delete').click(function (e) {
$("#dialog-confirm").dialog({
resizable: false,
height: 140,
modal: true,
buttons: {
"Delete all items": function () {
$(this).dialog("close");
},
Cancel: function () {
$(this).dialog("close");
}
}
});
});
});
Run Code Online (Sandbox Code Playgroud)
这只是为了得到一些工作,但有了这个我打开对话框,并在一秒后自动关闭.这似乎是非常标准的东西所以你能提供一个如何实现这个目标的例子吗?