我正在将一个asp.net应用程序转换为mvc3.假设我有一个需要https的登录页面,而且每个其他页面只需要http我如何将登录重定向到https并将所有其他页面保留在http?
任何建议都会很棒!
我有一个简单的webapi2项目.
我似乎发现自己的唯一信息是指较旧的webapi1
如果我有我的控制器
/// <summary>
/// Gets a list of not very interesting information
/// </summary>
/// <returns>The list</returns>
[ResponseType(typeof(ExampleModel))]
public IHttpActionResult Get()
{
var data = new List<ExampleModel>()
{
new ExampleModel()
{
Date = DateTime.Now,
Name = "Tom"
},
new ExampleModel()
{
Date = DateTime.Now.AddDays(-20),
Name = "Bob"
}
};
Run Code Online (Sandbox Code Playgroud)
当我尝试浏览帮助页面时,为什么没有信息出现.我被告知没有文件可用.
在某个地方是否有一个神奇的开关可以打开这些数据的自动填充?
使用新的webapi 2.1位.出于某种原因,当我打开帮助页面时,没有任何属性的描述细节,例如
/// <summary>
/// Some summary that shows correct
/// </summary>
[DataContract]
public class MyClass
{
/// <summary>
/// Display something.....
/// </summary>
[DataMember(Name = "Great")]
public string MyGreatProperty { get; set; }
Run Code Online (Sandbox Code Playgroud)
当我打开帮助页面时,我可以看到摘要"显示正确的一些摘要"但是对于此模型的属性,没有任何摘要显示.
webapi 2不支持属性描述吗?
我正在构建一个WPF 4应用程序,我想在屏幕右下角的单独窗口中的格式良好的框中显示一条消息.
我非常喜欢当应用程序与主服务器同步时Evernote的弹出窗口.
我该怎么做呢?
我只是在我的应用程序和新窗口中创建一个新窗口显示我的消息,然后使用计时器关闭它,还是有更好的方法?
我正在用mvc4和实体框架5编写一个非常小的应用程序.
我想为产品添加产品,商店和图像.
我有一个模特
[Table("CatalogItem")]
public class CatalogItemModel
{
[Key]
public int CatalogItemId { get; set; }
public string Description { get; set; }
public double Price { get; set; }
public int ProductCount { get; set; }
public string Size { get; set; }
public string Sku { get; set; }
[Column(TypeName = "image")]
public byte[] Image { get; set; }
[Display(Name = "Display Catalog Item")]
public bool DisplayItem { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我的控制器.这永远不会受到打击.
[HttpPost]
public ActionResult Create(CatalogItemModel catalogitemmodel) …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用我正在处理的mvc6应用程序使用autofac.我发现这篇博客文章似乎有点过时了.它看起来像使用beta3位
我正在使用这个clr版本
1.0.0-beta5-11911
我的项目有这两个参考
"Autofac": "4.0.0-alpha2",
"Autofac.Dnx": "4.0.0-alpha2",
Run Code Online (Sandbox Code Playgroud)
在文章中讨论了如何修改startup.cs
// Create the Autofac container builder.
var builder = new Autofac.ContainerBuilder();
// Add any Autofac modules or registrations.
builder.RegisterModule(new AutofacModule());
// Populate the services.
builder.Populate(services);
// Build the container.
var container = builder.Build();
return container.Resolve<IServiceProvider>();
Run Code Online (Sandbox Code Playgroud)
上面的代码抱怨builder.Populate(services);给我一个错误
"IServiceDescriptor"类型在未引用的程序集中定义.您必须添加对程序集"Microsoft.Framework.DependencyInjection.IServiceDescriptor,Version = 0.0.0.0,Culture = neutral,PublicKeyToken = null"的引用.
从我的研究看起来像beta4 DependencyInjection.IserviceDescriptor被删除.
有没有其他人设法让autofac使用最新的beta5位?
嗨,我正在尝试设置一个api,允许第三方webhooks目的地发布应用程序/ x-www-form-urlencoded.
我只使用过webapi的json和xml.
我是否需要创建一个自定义媒体类型来接受它,或者它是否应该默认工作?
任何建议,将不胜感激.
UPDATE
我看了一下提供的示例,但是我仍然不确定webhook将发送给我的api的数据示例.
我是怎么设置我的控制器接受这个?
POST /some-path HTTP/1.1 Host: your.host.example.com Content-Type: application/x-www-form-urlencoded Content-Length: 2837 Connection: keep-alive Accept: /environment=prod&domain_prefix=example&type=product.update&payload=%7B%22id%22%3A%229fe945bc-2d20-11e2-8057-080027706aa2%22%2C%22retailer_id%22%3A%229a5521c3-2d20-11e2-8057-080027706aa2%22%2C%22sku%22%3A%229416050901074%22%2C%22handle%22%3A%221000001%22%2C%22source%22%3A%22USER%22%2C%22active%22%3A%221%22%2C%22name%22%3A%22Ginger+Beer%22%2C%22description%22%3A%22%3Cp%3EA+delicious+ginger+beer+that+is+both+refreshing+and+good+value+for+money.%3C%5C%2Fp%3E%22%2C%22supplier%22%3A%7B%22id%22%3A%229fc84329-2d20-11e2-8057-080027706aa2%22%2C%22retailer_id%22%3A%229a5521c3-2d20-11e2-8057-080027706aa2%22%2C%22name%22%3A%22Brewer+Supplies+Ltd.%22%2C%22description%22%3A%22We+supply+all+things+brewed%5Cn%22%2C%22source%22%3A%22USER%22%7D%2C%22brand%22%3A%7B%22id%22%3A%229fb8e69d-2d20-11e2-8057-080027706aa2%22%2C%22name%22%3A%22Vaughan%27s+Ginger+Beer+Brewing+Company%22%7D%2C%22inventory%22%3A%5B%7B%22product_id%22%3A%229fe945bc-2d20-11e2-8057-080027706aa2%22%2C%22outlet_id%22%3A%229aee412b-2d20-11e2-8057-080027706aa2%22%2C%22attributed_cost%22%3A%221%22%2C%22count%22%3A%2222%22%2C%22reorder_point%22%3A%2212%22%2C%22restock_level%22%3A%2240%22%7D%2C%7B%22product_id%22%3A%229fe945bc-2d20-11e2-8057-080027706aa2%22%2C%22outlet_id%22%3A%229ae97219-2d20-11e2-8057-080027706aa2%22%2C%22attributed_cost%22%3A%221%22%2C%22count%22%3A%2214%22%2C%22reorder_point%22%3A%226%22%2C%22restock_level%22%3A%2220%22%7D%5D%2C%22price_book_entries%22%3A%5B%7B%22id%22%3A%22a1098b59-2d20-11e2-8057-080027706aa2%22%2C%22product_id%22%3A%229fe945bc-2d20-11e2-8057-080027706aa2%22%2C%22price%22%3A%222.00%22%2C%22tax%22%3A%220.25%22%2C%22type%22%3A%22BASE%22%2C%22customer_group_id%22%3A%229b097e69-2d20-11e2-8057-080027706aa2%22%2C%22customer_group_name%22%3A%22All+Customers%22%2C%22tax_id%22%3A%229a025ff0-2d20-11e2-8057-080027706aa2%22%2C%22tax_name%22%3A%22NZ+GST%22%2C%22tax_rate%22%3A%220.150000%22%7D%2C%7B%22id%22%3A%22a1318cf0-2d20-11e2-8057-080027706aa2%22%2C%22product_id%22%3A%229fe945bc-2d20-11e2-8057-080027706aa2%22%2C%22price%22%3A%221.90%22%2C%22tax%22%3A%220.24%22%2C%22type%22%3A%22GENERAL%22%2C%22customer_group_id%22%3A%229b097e69-2d20-11e2-8057-080027706aa2%22%2C%22customer_group_name%22%3A%22All+Customers%22%2C%22tax_id%22%3A%229a025ff0-2d20-11e2-8057-080027706aa2%22%2C%22tax_name%22%3A%22NZ+GST%22%2C%22tax_rate%22%3A%220.150000%22%7D%2C%7B%22id%22%3A%22a13a6320-2d20-11e2-8057-080027706aa2%22%2C%22product_id%22%3A%229fe945bc-2d20-11e2-8057-080027706aa2%22%2C%22min_units%22%3A%2210.00%22%2C%22price%22%3A%221.50%22%2C%22tax%22%3A%220.19%22%2C%22type%22%3A%22BASE%22%2C%22customer_group_id%22%3A%229b097e69-2d20-11e2-8057-080027706aa2%22%2C%22customer_group_name%22%3A%22All+Customers%22%2C%22tax_id%22%3A%229a025ff0-2d20-11e2-8057-080027706aa2%22%2C%22tax_name%22%3A%22NZ+GST%22%2C%22tax_rate%22%3A%220.150000%22%7D%5D%7D
很抱歉,如果这是一个愚蠢的问题我不知道如何开始编写一些单元测试.
我有一个包含api和单元测试项目的解决方案.api有一个存储库/接口,用于使用ninject进行数据访问.
我的问题是如何对我的api控制器进行单元测试的最佳方法.我已经阅读了一些关于Moq的内容,但不确定我是否需要使用它,因为我想针对我的数据库进行测试.
我已经读过我需要使用一个[TestInitialize]属性
[TestInitialize]
public void MyTestInitialize()
{
var kernel = NinjectWebCommon.CreatePublicKernel();
kernel.Bind<BusinessController>().ToSelf();
}
Run Code Online (Sandbox Code Playgroud)
我的问题是我的测试项目无法解析CreatePublicKernel检查api中的NinjectWebCommon类没有名为CreatePublicKernel的函数.
我在这里错过了什么?
使用新的mvc4现在让我们可以使用facebook oauth otb.
我在facebook中创建了一个新的应用程序,并围绕要求用户电子邮件地址/位置和生日的许可设置了一些额外的要求.
我已经在fb中保存了更改,当单击预览身份验证对话框时,我可以看到我想要在预览窗口中显示的额外权限.
当我尝试对Facebook进行身份验证时,我不会被问到是否允许我在facebook中设置的额外字段.
我的mvc应用程序中是否还有其他内容需要更改以将这些额外要求传递给Facebook?
谢谢你的帮助.
我正在尝试使用会员重启来设置github.
如果我尝试从浏览器调用github api
如果我尝试使用.net,我可以看到所有有效的json数据
public ActionResult Index()
{
var url = "https://api.github.com/user?access_token=XXXXXXXX";
////add additional params
//if (additionalParams != null)
//{
// foreach (string key in additionalParams)
// {
// url += string.Format("&{0}={1}", key, additionalParams[key]);
// }
//}
HttpClient client = new HttpClient();
var result = client.GetAsync(url).Result;
if (result.IsSuccessStatusCode)
{
var json = result.Content.ReadAsStringAsync().Result;
var profile = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, object>>(json);
//return GetClaimsFromProfile(profile);
}
return View();
}
Run Code Online (Sandbox Code Playgroud)
我得到一个错误
服务器提交了协议违规.第= ResponseStatusLine
什么不HttpClient喜欢我正在尝试什么?我是否需要提供浏览器为我做的额外细节?
任何帮助,将不胜感激!
asp.net-mvc ×3
c# ×3
asp.net ×1
autofac ×1
c#-4.0 ×1
facebook ×1
ninject ×1
unit-testing ×1
webclient ×1
wpf ×1