我正在使用Postman对服务器进行REST API调用.我想使名称字段动态化,这样我每次都可以使用唯一的名称运行请求.
{
"location":
{
"name": "Testuser2", // this should be unique, eg. Testuser3, Testuser4, etc
"branding_domain_id": "52f9f8e2-72b7-0029-2dfa-84729e59dfee",
"parent_id": "52f9f8e2-731f-b2e1-2dfa-e901218d03d9"
}
}
Run Code Online (Sandbox Code Playgroud) 我在Asp.Net MVC 4项目中解决404响应时遇到问题.它内置于VS2012,目标4.5.
我有预编译的视图和控制器内置到独立的DLL中.我能够动态加载DLL并从我的核心项目中检查它们,甚至调用它们的方法; 但是,似乎MVC框架并不知道控制器.我在附近,但有些东西不见了.
控制器和视图的背景
控制器构建在独立的MVC项目中并继承自Controller.没有什么太有趣了.视图使用RazorGenerator并成为项目中的类.
项目的输出是一个DLL,它正确包含控制器和视图.
这些DLL IPlugin在库中的一个单独的类(不是控制器的一部分)中实现一个特定的接口,我们称之为它.
加载DLL
在Visual Studio中以管理员身份运行我编译我的应用程序,该应用程序在IIS下托管.随着项目的建立,我将插件DLL放入我的"插件"目录.没有调试(这在以后变得很重要),我打开IE并导航到该站点. 请注意,此时App已构建,但从未运行,因此将启动启动事件.如果我回收应用程序池,这里的一切仍然是一致的.
我有Startup两种方法类,PreStart并PostStart使用调用方法WebActivator.PreApplicationStartMethod和WebActivator.PostApplicationStartMethod分别.
PreStart 我在哪里做以下事情:
AppDomain.CurrentDomain.DynamicDirectoryIPlugin我那么
在'PostStart'中我做了一些代码(基于RazorGenerator.Mvc的代码):
foreach (var assembly in Modules.Select(m=>m.Value))
{
var engine = new PrecompiledMvcEngine(assembly)
{
UsePhysicalViewsIfNewer = HttpContext.Current.Request.IsLocal
};
ViewEngines.Engines.Insert(0, engine);
VirtualPathFactoryManager.RegisterVirtualPathFactory(engine);
}
Run Code Online (Sandbox Code Playgroud)
Modules在此上下文中是键/值对,其中值是加载的程序集.此代码的目的是通过为知道如何解析视图的每个程序集添加视图引擎来确保MVC知道视图(这是RazorGenerator的一部分).
我怎么知道我很接近(但显然缺乏雪茄)
IPlugin定义一个名为RegisterRouteswhere 的方法,你猜对了,为那些实现接口的人注册了路由.我调用此方法PreStart并添加路由 - 我已经验证了这些存在于我的路由表中.例如,在我的插件中定义的路由,通过在此期间动态调用方法创建的路径PreStart,我在检查路由时看到类似这样的DataToken:
Namespaces = Plugin.Name.Controllers
Run Code Online (Sandbox Code Playgroud)
因此,路由已注册,程序集已加载,我已验证DLL已正确复制到AppDomain的DynamicDirectory.我可以调用在运行时动态加载的类的成员.但是当我导航到路线匹配的URL时,我得到了404.这不是 …
我有一个非常基本的父子关系设置.最终结果是我希望能够通过ASP.NET MVC WebAPI将结果表作为JSON返回.我正在使用Entity Framework 5.0 beta 2.
我可以用一个简单的例子来演示我遇到的错误.给定类Category和Product相应的数据上下文:
public class Category
{
public int CategoryId { get; set; }
public string Title { get; set; }
public virtual IEnumerable<Product> Products { get; set; }
}
public class Product
{
public int ProductId { get; set; }
public string Title { get; set; }
public virtual Category Category { get; set; }
public virtual int CategoryId { get; set; }
}
public class ProductDataContext : DbContext
{ …Run Code Online (Sandbox Code Playgroud) 我最初问过这个问题: 如何解决"指定的包含路径无效"?已经回答了,而我的.Include()现在正在工作,但是,当序列化程序试图使它变得神奇时,我收到以下错误:
You must write an attribute 'type'='object' after writing the attribute
with local name '__type'.
Run Code Online (Sandbox Code Playgroud)
这是我正在做的返回数据:
var everything = dc.Categories
.Include(c => c.Products);
Run Code Online (Sandbox Code Playgroud)
我的类定义相当简单:
public class Category
{
public int CategoryId { get; set; }
public string Title { get; set; }
public virtual ICollection<Product> Products { get; set; }
}
public class Product
{
public int ProductId { get; set; }
public string Title { get; set; }
public virtual Category Category { get; set; }
} …Run Code Online (Sandbox Code Playgroud) 我刚刚遇到过以前没有发生过的Visual Studio 2010 RC(比如昨天).这里没有软件更改,但昨天编译时需要重新启动我确实遇到了一些问题.
我无法通过添加对话框将LINQ to SQL类添加到任何项目.我创建了ASP.NET网站,ASP.NET MVC项目 - 这两个项目都是"模板化"和"空" - 并且似乎没有安装或可用的模板.
alt text http://bandofgeeks.net/blogimages/code/notemplate.png
我已确保该项目以4.0 Framework为目标.我可以轻松添加新数据库,并且ADO.NET实体框架模板就在那里.
作为一种解决方法,我可以将DBML文件复制到我的项目中,删除所有表和sprocs,更新连接字符串并使用剩余的shell(设计师可以正常工作),但这很痛苦.
有没有其他人的模板下降?弄清楚如何重新安装它们?
作为编译的输入,我有一个字符串,其中包含以下代码:
public class Person
{
public string FirstName { get; set; }
public string LastName { get; set; }
public int Age { get; set; }
public string EmailAddress { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我有以下代码,请注意评论[01].这里的目的是获取一个包含类的字符串(从this.Source组件的代码发出并发送到MemoryStream.
var assemblyPath = Path.GetDirectoryName(typeof(object).Assembly.Location);
var assemblyName = Guid.NewGuid().ToString();
var syntaxTrees = CSharpSyntaxTree.ParseText(this.Source);
// build references up
var references = new List<MetadataReference>();
//[01] references.Add("System.dll"));
// set up compilation
var compilation = CSharpCompilation.Create(assemblyName)
.WithOptions(new CSharpCompilationOptions(OutputKind.DynamicallyLinkedLibrary))
.AddReferences(references)
.AddSyntaxTrees(syntaxTrees);
// build the assembly …Run Code Online (Sandbox Code Playgroud) 我希望看到在ASP.NET Core MVC 1.1.0中使用Razor工具从Razor生成的类的输出。
似乎没有中间文件阶段,也没有选择将类输出为纯文本的选项。生成的文件是一个DLL,该DLL存储在您指定的目录中,因此该类已处于已编译形式。我曾尝试使用Telerik的JustDecompile,但是它说“ JustDecompile仅支持有效的CLR程序集。” 并且不会检查输出。
是否可以查看所生成类的源?
我已尝试在几个不同的服务器上安装Web Deploy,它的工作范围我需要它,但我还没有确定缺少的步骤是什么.
在安装了以下必需条件之后:http: //www.iis.net/learn/install/installing-publishing-technologies/installing-and-configuring-web-deploy
在网站的上下文菜单中偶尔会出现"配置Web部署发布"选项.有没有人有适当的部署指南?如何启用该选项?
在这些情况下的部署不是通过WebPI.我必须单独下载软件包并手动安装.使用当前链接,屏幕截图或建议找不到详细信息.
基本Windows Server 2008服务器没有安装任何特殊功能.如果有人有任何想法,很高兴澄清任何事情.
我正在尝试为ASP.NET应用程序布置RDLC报告.我正在使用实体框架并有一个部分类,它返回从EDMX设计器生成的实体列表.所有文件都正确命名并在同一项目中,以简化问题.
我正在尝试通过这里的示例:http: //msdn.microsoft.com/en-us/library/ms251692(VS.100).aspx
...目标是通过ActionResult将报告呈现给ASP.NET MVC中的响应流.
在"设计报告"部分中,在步骤2中,它表示选择"全局",此时我的实体应该可用.不幸的是,没有全局,我找不到其他方法来从我的模型中引用IList静态方法.
此外,似乎没有办法将对象数据源添加到报表中(如在以前的IDE中),因为没有"数据源"工具窗口.
有一个"报表数据"工具窗口,但没有添加数据源的选项(除非我想创建一个DataSet,否则我没有).如果我使用数据集方法,则无法根据EF生成的对象布置报表.
如何将实体引用(对象数据源)添加到报表中以便它能够识别我的模型对象?
我在通过WPI安装的Win2k8/IIS7上运行WordPress(使用httpcache,fastCgi和UrlRewriter 2.0).一切似乎都运行正常(上传,通过Live Writer发布,评论,插件,漂亮的URL).
我正在尝试将WordPress更新到最新版本,但我收到如下错误:
下载失败.文件流的目标目录不存在或不可写
这与我在尝试下载主题或更新插件时获得的错误相同.
事件日志中没有错误,WordPress并没有真正告诉我它正在寻找哪个目录,它认为它正在使用什么用户或缺少什么权限.
我已经双重(和三重)检查了IIS App Pool用户是否已显式设置,并且该目录具有该用户的修改权限,最后这些权限已经传播到子文件夹.
根据Google博士的建议,我还在配置文件中添加了以下设置:
/** Absolute path to the WordPress directory. */
if ( !defined('ABSPATH') )
define('ABSPATH', dirname(__FILE__) . '/');
/** Sets up WordPress vars and included files. */
require_once(ABSPATH . 'wp-settings.php');
define('WP_TEMP_DIR', ABSPATH . 'wp-content/');
define('FS_METHOD', 'direct');
Run Code Online (Sandbox Code Playgroud)
我错过了配置选项或设置吗?WordPress需要牺牲一只小猫和/或阿尔及利亚人吗?
我正在构建一个大致如下布局的库.有几个变量,一个事件处理程序和一个导致相关事件触发的方法.最后,我延长了与房产的交易.它是这样的(我添加了一些///...我剪掉其他代码的地方):
$.collidR = function (options) {
/// ...
var hubName = 'CollidRHub';
var hubProxy = connection.createHubProxy(hubName);
/// ...
hubProxy.on('registrationComplete', function (username, hasChanges) {
$(window).triggerHandler(events.onRegistrationComplete, { username: username, hasChanges: hasChanges });
log(username + " has successfully registered for this entity.");
// capture current user
this._currentUser = username;
// hook for catching up when user joins after edits
if (hasChanges) {
log("There are outstanding changes for this entity...");
}
});
/// ...
this.registerClient = function () {
/// does some …Run Code Online (Sandbox Code Playgroud) asp.net-mvc ×4
.net ×3
asp.net-core ×1
assemblies ×1
compilation ×1
iis ×1
iis-7 ×1
javascript ×1
json ×1
linq-to-sql ×1
msdeploy ×1
postman ×1
razor ×1
rdlc ×1
roslyn ×1
webdeploy ×1
wordpress ×1