问题描述
我正在尝试使用 using System;
using System.Drawing;
using System.Reflection;
using System.Runtime.InteropServices;
using System.Windows.Forms;
public partial class Form1 : Form
{
textformatFlags flags = textformatFlags.VerticalCenter
| textformatFlags.Left
| textformatFlags.LeftAndRightPadding
| textformatFlags.NoClipping
| textformatFlags.WordBreak;
public Form1()
{
InitializeComponent();
}
private void toolTip1_Popup(object sender,PopupEventArgs e)
{
var tt = sender as ToolTip;
var toolTipText = tt.GetToolTip(e.AssociatedControl);
var screen = Screen.FromControl(e.AssociatedControl).WorkingArea;
using (var g = e.AssociatedControl.CreateGraphics())
using (var font = new Font("Arial",16))
{
var sz = TextRenderer.MeasureText(
g,toolTipText,font,screen.Size,flags);
e.ToolTipSize = new Size(screen.Width - 2,sz.Height + 10);
}
}
private void toolTip1_Draw(object sender,DrawToolTipEventArgs e)
{
var t = sender as ToolTip;
var h = (IntPtr)t.GetType().GetProperty("Handle",BindingFlags.NonPublic | BindingFlags.Instance).GetValue(t);
MoveWindow(h,2,e.Bounds.Width - 2,e.Bounds.Height,false);
e.DrawBackground();
e.DrawBorder();
using (var font = new Font("Arial",16))
TextRenderer.DrawText(e.Graphics,e.ToolTipText,e.Bounds,Color.Black,flags);
}
[DllImport("User32.dll")]
static extern bool MoveWindow(IntPtr h,int x,int y,int width,int height,bool redraw);
}
将数据写入 Azure Stream Analytics Job
。我对 sql Server
列使用唯一标识符,但似乎无法从 Id
生成 guid。我怎样才能生成它?我应该更改我的 id 列类型吗?有什么建议吗?
解决方法
您可以尝试使用 GetMetadataPropertyValue
函数。
EventId 属性为输入事件创建唯一 ID (Guid), 这对于主键目的很有用。 EventId 一致 (不是随机的);如果你回到过去并重新阅读相同的输入事件, 流分析将生成相同的 ID。
这是MSDN。您也可以参考Azure Stream Analytics Unique EventId Property is NULL。