所以我的问题有两个限制:
所以我的问题是我在点击事件发生后尝试取消绑定,然后在点击事件代码完成后重新绑定它.我这样做是为了防止代码当前正在进行中的重复点击(我有fadeIn/Out动画,可以快速点击按钮两次或三次,从而执行我的代码2或3次,这是不需要的) .我正在使用的代码如下:
$item.live("click", handleClick);
Run Code Online (Sandbox Code Playgroud)
和
function handleClick(ev) {
$(this).die("click");
// perform code here, including things with 'ev'
$(this).live("click", handleClick);
}
Run Code Online (Sandbox Code Playgroud)
我疯了,还是应该没有问题?现在,我可以点击一次,但之后不会再次点击.很明显die()正在工作,但它并没有因为某种原因而被重新绑定到该函数.我已经验证它确实到达handleClick()中的代码以重新绑定实时点击.
有任何想法吗?任何帮助将不胜感激.谢谢.
我希望通过确保显示的第二个字符串显示在第一个字符串输出的中心,将字符串居中于另一个字符串.我如何在C#中这样做呢.提前致谢
我有一个这样的数据表:
- PK_table - merchantName - price - Product
- 1 - argos - 7 - 4
- 2 - comet - 3 - 4
- 1 - Dixon - 1 - 3
- 1 - argos - 10 - 4
Run Code Online (Sandbox Code Playgroud)
我希望在mysql中选择产品和相应商家的最低价格.
我试过了:
SELECT Product, merchantName, min(price)
FROM a_table
GROUP BY product
Run Code Online (Sandbox Code Playgroud)
但是返回的结果不正确,因为它选择了第一个商家名称,而不是MIN的相应商家.
你怎么做呢?
我正在使用VS 2010,并在我当前的项目中使用C#中的大量流.我已经编写了一些流转储实用程序来写出某些类型的流用于调试目的,但是当我调试时需要查看我正在调试的流时,我似乎一直磕磕绊绊,但我没有放我的在那里转储电话.看起来我应该能够以某种方式使用VS转储流,或者告诉它在调试器中调用我的一个转储方法.有没有想做到这一点?
我正在使用的流有一些描述blob数据的文本,然后是blob的字节,所以查看描述是有用的.我的转储方法通常只是将信息转储出来,然后跳过blob.
我想知道是否可以获取枚举值的属性而不是枚举本身的属性?例如,假设我有以下枚举:
using System.ComponentModel; // for DescriptionAttribute
enum FunkyAttributesEnum
{
[Description("Name With Spaces1")]
NameWithoutSpaces1,
[Description("Name With Spaces2")]
NameWithoutSpaces2
}
Run Code Online (Sandbox Code Playgroud)
我想要的是枚举类型,产生2元组的枚举字符串值及其描述.
价值很容易:
Array values = System.Enum.GetValues(typeof(FunkyAttributesEnum));
foreach (int value in values)
Tuple.Value = Enum.GetName(typeof(FunkyAttributesEnum), value);
Run Code Online (Sandbox Code Playgroud)
但是如何获取描述属性的值,以填充Tuple.Desc?如果属性属于枚举本身,我可以想到如何做到这一点,但我不知道如何从枚举的值中获取它.
我有一些C#代码使用CSharpCodeProvider.CompileAssemblyFromSource在内存中创建一个程序集.在对程序集进行垃圾回收之后,我的应用程序使用的内存比创建程序集之前的内存要多.我的代码在ASP.NET Web应用程序中,但我在WinForm中重复了这个问题.我正在使用System.GC.GetTotalMemory(true)和Red Gate ANTS Memory Profiler来测量增长(使用示例代码大约600个字节).
从我的搜索开始,听起来泄漏来自新类型的创建,而不是来自我所持有的任何对象.我发现的一些网页提到了有关AppDomain的一些内容,但我不明白.有人可以解释这里发生了什么以及如何解决它?
以下是泄漏示例代码:
private void leak()
{
CSharpCodeProvider codeProvider = new CSharpCodeProvider();
CompilerParameters parameters = new CompilerParameters();
parameters.GenerateInMemory = true;
parameters.GenerateExecutable = false;
parameters.ReferencedAssemblies.Add("system.dll");
string sourceCode = "using System;\r\n";
sourceCode += "public class HelloWord {\r\n";
sourceCode += " public HelloWord() {\r\n";
sourceCode += " Console.WriteLine(\"hello world\");\r\n";
sourceCode += " }\r\n";
sourceCode += "}\r\n";
CompilerResults results = codeProvider.CompileAssemblyFromSource(parameters, sourceCode);
Assembly assembly = null;
if (!results.Errors.HasErrors)
{
assembly = results.CompiledAssembly;
}
}
Run Code Online (Sandbox Code Playgroud)
更新1:此问题可能相关:动态加载和卸载使用CSharpCodeProvider生成的all
更新2:尝试更多地了解应用程序域,我发现: …
c# memory-leaks appdomain marshalling compileassemblyfromsource
我已经习惯了Java的String,我们可以传递null而不是""来表示特殊含义,例如使用默认值.
在Go中,string是基本类型,因此我无法将nil(null)传递给需要字符串的参数.
我可以使用指针类型编写函数,如下所示:
func f(s *string)
Run Code Online (Sandbox Code Playgroud)
所以调用者可以将该函数称为
f(nil)
Run Code Online (Sandbox Code Playgroud)
要么
// not so elegant
temp := "hello";
f(&temp)
Run Code Online (Sandbox Code Playgroud)
但遗憾的是不允许以下情况:
// elegant but disallowed
f(&"hello");
Run Code Online (Sandbox Code Playgroud)
接收字符串或nil的参数的最佳方法是什么?
我在事件日志中看到以下错误.它来自我们的ASP.Net应用程序.我无法追踪导致错误的原因.任何建议赞赏!
错误日志
[MachineName]已为IIS记录以下错误
详细信息:ComputerName = [ComputerName] User =未指定Logfile =应用程序类型=错误EventType = 1 SourceName = ASP.NET 2.0.50727.0 Category = 0 CategoryString =未指定EventCode = 1334 EventID = -1073740490 TimeGenerated = 20091125101806.000000-360 TimeWritten = 20091125101806.000000 -360 Message =发生未处理的异常并终止进程.
应用程序ID:DefaultDomain进程ID:1440异常:System.Runtime.Serialization.SerializationException消息:无法找到程序集"Company.Common,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null".
StackTrace:位于System.Runtime.Serialization.Formatters.Binary的System.Runtime.Serialization.Formatters.Binary.ObjectReader.GetType(BinaryAssemblyInfo assemblyInfo,String name)中的System.Runtime.Serialization.Formatters.Binary.BinaryAssemblyInfo.GetAssembly(). ObjectMap..ctor(字符串对象名,字符串[] memberNames,BinaryTypeEnum [] binaryTypeEnumA,对象[] typeInformationA,的Int32 [] memberAssemIds,objectReader objectReader,的Int32的ObjectID,BinaryAssemblyInfo集信息,SizedArray assemIdToAssemblyTable)
在System.Runtime.Serialization.Formatters.Binary .__ BinaryParser.ReadObjectWithMapTyped(BinaryObjectWithMapTyped record)System.Runtime.Serialization.Formatters.Binary .__ BinaryParser.Run()at System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(HeaderHandler handler,__BinaryParser serParser,Boolean fCheck,Boolean isCrossAppDomain) ,System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream seri)中的IMethodCallMessage methodCallMessage)在System.AppDomain.UnmarshalObject(Byte)的System.AppDomain.Deserialize(Byte [] blob)的System.Runtime.Remoting.Channels.CrossAppDomainSerializer.DeserializeObject(MemoryStream stm)处的alizationStream,HeaderHandler处理程序,Boolean …
如何清除这个以便用户无法将页面拉到本地域之外?
<?php
if(!empty($_GET['page']))
{
include($_GET['page']);
}
else
{
include('home.php');
}
?>
Run Code Online (Sandbox Code Playgroud)