关于jQuery的初学者问题:
我有一个包含几个TextBox的表单(输入类型="文本").我希望在TextBox获得焦点时显示某种Tooltip,并在它失去焦点时隐藏它.理想情况下,工具提示应该是左侧或右侧的"语音"气泡.
我google了一下,找到了jQuery的qTip,但是当它悬停在某个东西上时,它似乎是一个工具提示插件,但具有我想要的布局和定位.
我天真地试图将它绑定到文本框:
$(function() {
$("input[id$=tbMyTextbox]").qtip({
content: 'My Tooltip Text'
});
});
Run Code Online (Sandbox Code Playgroud)
(选择器工作,我没有使用#tbMyTextbox,因为它是ASP.net,我没有使用<%= tbMyTextBox.ClientID%>,因为我的.aspx文件中没有任何代码,但这不是主题 - 选择器本身与其他东西一起工作,所以我认为它很好.)
任何人都可以给我一个暗示它是如何工作或告诉我有关不同的jQuery插件吗?
谢谢!
编辑:谢谢,Show Event诀窍!
$("input[id$=tbMyTextbox]").qtip({
content: 'Test',
position: {
corner: {
target: 'rightMiddle',
tooltip: 'leftMiddle'
}
},
show: {
when: {
event: 'focus'
}
},
hide: {
when: {
event: 'blur'
}
}
});
Run Code Online (Sandbox Code Playgroud) 我想从SharePoint中调用外部WCF服务.使用普通的WCF调用会立即导致SocketException(现有连接被远程主机强行关闭),可以使用SPSecurity.RunWithElevatePrivileges来规避它.
[SocketException(0x2746):远程主机强制关闭现有连接]
System.Net.Sockets.Socket.Receive(Byte []缓冲区,Int32偏移量,Int32大小,SocketFlags socketFlags)+85
System.ServiceModel.Channels.SocketConnection .ReadCore(Byte [] buffer,Int32 offset,Int32 size,TimeSpan timeout,Boolean closing)+204[CommunicationException:套接字连接已中止.这可能是由于处理消息的错误或远程主机超出接收超时或基础网络资源问题引起的.本地套接字超时为'00:00:58.7210000'.]
System.ServiceModel.Channels.SocketConnection.ReadCore(Byte [] buffer,Int32 offset,Int32 size,TimeSpan timeout,Boolean closing)+15307563
System.ServiceModel.Channels.SocketConnection.读取(Byte []缓冲区,Int32偏移量,Int32大小,TimeSpan超时)+90
System.ServiceModel.Channels.DelegatingConnection.Read(Byte []缓冲区,Int32偏移量,Int32大小,TimeSpan超时)+34
System.ServiceModel.Channels. ConnectionStream.Read(Byte [] buffer,Int32 offset,Int32 count,TimeSpan timeout)+34
System.ServiceModel.Channels.ConnectionStream.Read(Byte [] buffer,Int32 offset,Int32 count)+88
System.Net.FixedSizeReader.ReadPacket (Byte [] buffer,Int32 offset,Int32 count)+58
System.Net.Security.NegotiateStream.StartFrameHeader(Byte [] buffer,Int32 offset,Int32 count,AsyncProtocolRequest asyncRequest)+62
System.Net.Security.NegotiateStream.StartReading(字节[]缓冲区,Int32偏移量,Int32计数,AsyncProtocolRequest asyncRequest)+54
System.Net.Security.N egotiateStream.ProcessRead(Byte [] buffer,Int32 offset,Int32 count,AsyncProtocolRequest asyncRequest)+402[IOException:读取操作失败,请参阅内部异常.]
System.Net.Security.NegotiateStream.ProcessRead(Byte [] buffer,Int32 offset,Int32 count,AsyncProtocolRequest asyncRequest)+704
System.Net.Security.NegotiateStream.Read(Byte) [] buffer,Int32 offset,Int32 count)+154
System.ServiceModel.Channels.StreamConnection.Read(Byte [] buffer,Int32 offset,Int32 size,TimeSpan timeout)+87[CommunicationException:套接字连接已中止.这可能是由于处理消息的错误或远程主机超出接收超时或基础网络资源问题引起的.本地套接字超时为'00:00:58.7210000'.]
System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg,IMessage retMsg)+10257978 …
我有一个Web API应用程序,其中控制器通过依赖注入(Unity)将服务/存储库等注入其中.让我们假设我IStuffService需要IPrincipal当前请求(或它周围的包装).
Web API的问题似乎是当前Request/User 的唯一可靠来源是Request该实例上的属性ApiController.任何静态的(无论是HttpContext.Current,CallContext.Get/SetData或Thread.Get/SetData)不能保证是相同的线程上,由于网络API的同步性质.
如何可靠地确保特定于请求的上下文通过依赖项传递,更重要的是,操作在整个操作过程中保持正确IPrincipal?
两种选择:
IPrincipal都将它作为方法的参数 - 这是最可靠的方法,但它也要求我在每个方法签名中都有这个东西container.Resolve(opType, new DependencyOverride(typeof(IPrincipal), principal))选项2意味着我的方法签名是干净的,但这也意味着我需要确保所有依赖项都使用TransientLifetimeManager,而不是Singleton甚至是Per-Thread.
有没有比我没有看到更好的解决方案?
我已经开始使用ASP.net AJAX(最后是☺).我有一个更新面板和一个asp:UpdateProgress.我的问题:UpdateProgress总是强制换行,因为它呈现为div-tag.
有没有办法强迫它成为跨度?我希望将它显示在与其他控件相同的行上,而不必在CSS中使用表格甚至是颤抖的绝对定位.
我坚持使用ASP.net AJAX 1.0和.net 3.0,如果这有所作为.
.net中的LinearGradientBrush(甚至是GDI +中的整体?)似乎有一个严重的错误:有时,它会引入工件.(参见此处或此处 - 基本上,线性渐变的第一行是在endcolor中绘制的,即从白色到黑色的渐变将以黑色线条开始,然后使用正确的白色到黑色渐变)
我想知道是否有人为此找到了解决方法?这是一个非常讨厌的bug :-(
这是Artifacts的图片,请注意有2个LinearGradientBrushes:
替代文字http://img142.imageshack.us/img142/7711/gradientartifactmm6.jpg
我有一个包含nvarchar列的数据库表,如下所示:
1|12.6|18|19
Run Code Online (Sandbox Code Playgroud)
我有一个具有Decimal []属性的业务对象.
我的LINQ查询如下所示:
var temp = from r in db.SomeTable select new BusinessObject {
// Other BusinessObject Properties snipped as they are straight 1:1
MeterValues = r.MeterValues.Split('|').Select(Decimal.Parse).ToArray()
};
var result = temp.ToArray();
Run Code Online (Sandbox Code Playgroud)
这会抛出NotSupportedException: Method 'System.String[] Split(Char[])' has no supported translation to SQL.
有点糟糕:)有没有办法我可以做到这一点,而无需向业务对象添加字符串属性或选择匿名类型然后迭代它?
我目前的"解决方案"是:
var temp = from r in db.SomeTable select new {
mv = r.MeterValues,
bo = new BusinessObject { // all the other fields }
};
var result = new List<BusinessObject>();
foreach(var t in temp) …Run Code Online (Sandbox Code Playgroud) 所以我用给定的ICalUid创建Exchange(2007)约会:
var app = new Appointment(svc);
app.ICalUid = id;
app.Subject = "Test Appointment";
app.Recurrence = new Recurrence.DailyPattern(DateTime.Now, 3);
app.RequiredAttendees.Add("mstum@example.com");
app.AllowNewTimeProposal = false;
app.Body = new MessageBody(BodyType.HTML, "This is a <b>Test!</b>");
app.Save();
Run Code Online (Sandbox Code Playgroud)
稍后,我想更新该约会,此时我需要通过ICalUid找到它.
但是,似乎没有办法做到这一点?我只能使用Appointment.BindExchange ID,这是我在更新时没有的(存储它非常不切实际)
我可以使用相同的ICalUid创建一个新的约会,它看起来像一个更新,但再次要求接受/拒绝,而不是只显示"无需更新".
有没有正确的方法呢?
.net exchange-server exchange-server-2007 exchangewebservices
我在Windows上使用dotnet 2.1.4.dotnet --info显示:
.NET Command Line Tools (2.1.4)
Product Information:
Version: 2.1.4
Commit SHA-1 hash: 5e8add2190
Runtime Environment:
OS Name: Windows
OS Version: 10.0.16299
OS Platform: Windows
RID: win10-x64
Base Path: C:\Program Files\dotnet\sdk\2.1.4\
Microsoft .NET Core Shared Framework Host
Version : 2.0.5
Build : 17373eb129b3b05aa18ece963f8795d65ef8ea54
Run Code Online (Sandbox Code Playgroud)
我正在使用dotnet发布来创建平台的输出:
dotnet publish ..\src\ChestnutDS.Host\ChestnutDS.Host.csproj
-c Release -o ..\..\published\win-x64
--self-contained -r win-x64 -v n
Run Code Online (Sandbox Code Playgroud)
这给了我在323文件的文件夹中所需的(和工作)输出.
现在,我想要做的是将所有大部分文件移动到子文件夹中,例如lib.
根据我收集的内容,additionalProbingPaths在runtimeconfig.json中设置应该有效:
{
"runtimeOptions": {
"additionalProbingPaths": [
"lib"
]
}
}
Run Code Online (Sandbox Code Playgroud)
但它抱怨没有找到图书馆:
Error:
An assembly specified in …Run Code Online (Sandbox Code Playgroud) 我正在将 GitHub Actions 设置为我的一个项目的 CI,整个构建过程基本上是一个 PowerShell 脚本,由环境变量驱动。
这既是为了最大限度地减少供应商锁定,并确保我可以使用几乎相同的过程在本地运行构建。
现在,我的构建脚本确定了一些内容并将其放入环境变量中 - 具体来说,我有一个MH_IS_PROD_BUILDTrue 或 False的变量,并确定我推送到哪个 nuget 包存储库。
但是,当运行 shell 的步骤完成时,环境变量将不复存在,因为进一步的步骤似乎是在新环境中运行的。
我想做的是这样的事情(缩写):
steps:
- name: Run build script
id: pwshbuild
shell: pwsh
run: |
cd scripts
./build.ps1
# The above sets $Env:MH_IS_PROD_BUILD to either True or False
- name: Push Publish to GPR (Dev Package)
if: steps.pwshbuild.outputs.MH_IS_PROD_BUILD == 'False'
shell: pwsh
run: |
# omitted: determine $nupkgPath
nuget push $nupkgPath -Source "GPR" -SkipDuplicate
- name: Push Publish …Run Code Online (Sandbox Code Playgroud) .net ×6
c# ×4
asp.net ×2
.net-core ×1
asp.net-ajax ×1
async-await ×1
gdi+ ×1
jquery ×1
linq ×1
linq-to-sql ×1
sharepoint ×1
wpf ×1