我试图绘制并填充一个三角形。我提到了一个android系统-问题如何在android画布上绘制实心三角形并执行以下操作。它绘制三角形,但不填充它。如何填充它?另外,是否可以用不同于线条颜色的颜色填充它?
Xamarin形式
private void OnPainting(object sender, SKPaintSurfaceEventArgs e)
{
var surface = e.Surface;
var canvas = surface.Canvas;
canvas.Clear(SKColors.White);
var pathStroke2 = new SKPaint
{
IsAntialias = true,
Style = SKPaintStyle.StrokeAndFill,
Color = new SKColor(244, 0, 110, 200),
StrokeWidth = 5
};
var path2 = new SKPath { FillType = SKPathFillType.EvenOdd };
path2.MoveTo(0, 0);
path2.LineTo(0, 140);
path2.MoveTo(0, 140);
path2.LineTo(140, 140);
path2.MoveTo(140, 140);
path2.LineTo(0, 0);
path2.Close();
canvas.DrawPath(path2, pathStroke2);
}
Run Code Online (Sandbox Code Playgroud)
我在 SQL Server 2016 中有下表
CREATE TABLE #Source (PatientID INT, DiagnosisCode VARCHAR(20), DX_Pt_RowNum INT)
INSERT INTO #Source
SELECT 1 AS PatientID, 'A' AS DiagnosisCode, 1 AS DX_Pt_RowNum UNION
SELECT 1 AS PatientID, 'B' AS DiagnosisCode, 2 AS DX_Pt_RowNum UNION
SELECT 1 AS PatientID, 'C' AS DiagnosisCode, 3 AS DX_Pt_RowNum UNION
SELECT 2 AS PatientID, 'K' AS DiagnosisCode, 1 AS DX_Pt_RowNum UNION
SELECT 2 AS PatientID, 'T' AS DiagnosisCode, 2 AS DX_Pt_RowNum UNION
SELECT 2 AS PatientID, 'E' AS DiagnosisCode, 1 …
Run Code Online (Sandbox Code Playgroud) 我有一张桌子如下图所示.它有固定和储蓄类型的帐户.我需要更新用户1的所有帐户的状态.该用户有10000个帐户.本质上,逻辑将如以下SQL存储过程脚本中所示.该脚本执行时间不到1秒(83毫秒).
但是当我使用LINQ to SQL将其转换为ORM时,它需要超过3分钟(204814毫秒).它至少慢了240,000%.
LINQ to SQL(或其他ORM)中是否存在有助于克服性能损失的模式?
有什么能迫使它在一次数据库中进行更新?
注意:我知道从LINQ调用存储过程.我不认为这是ORM而不是我的选择.
手动存储过程脚本
DECLARE @UserID INT
DECLARE @StatusForFixed VARCHAR(50)
DECLARE @StatusForSavings VARCHAR(50)
SET @UserID = 1
SET @StatusForFixed = 'FrozenFA11'
SET @StatusForSavings = 'FrozenSB22'
UPDATE BankAccount
SET Status =
CASE
WHEN BankAccount.AccountType='Fixed' THEN @StatusForFixed
WHEN BankAccount.AccountType='Savings' THEN @StatusForSavings
END
WHERE AccountOwnerID=@UserID
Run Code Online (Sandbox Code Playgroud)
LINQ生成的代码示例
Note: This type of statements happen 10000 times
UPDATE [dbo].[BankAccount]
SET [Status] = @p3
WHERE [BankAccountID] = @p0
-- @p0: Input Int (Size = -1; …
Run Code Online (Sandbox Code Playgroud) 我需要在Payment表中插入一条记录.我发现了两种方法
两者有什么区别?什么时候用?
public void InsertEntity(DBML_Project.Payment payment)
{
//Insert the entity
MyDataContext.GetTable<DBML_Project.Payment>().InsertOnSubmit(payment);
}
public void InsertPayment(IPayment payment)
{
this.AddObject(payment.GetType().Name, payment);
}
Run Code Online (Sandbox Code Playgroud) 这些天我遇到了很多奇怪的场景 :-)
我在ASP.Net应用程序中测试了以下两个代码.代码1抛出异常(如预期的那样),而当字符串值为null时,代码2不会抛出异常(与期望相反).
// 代码1:导致异常
string test = Convert.ToString(subscriber.EncryptedSSN).Substring(0, Convert.ToString(subscriber.EncryptedSSN).Length >= 5 ? 5 : Convert.ToString(subscriber.EncryptedSSN).Length);
Run Code Online (Sandbox Code Playgroud)
// 代码2:不抛出异常
<%# Convert.ToString(Eval("EncryptedSSN")).Substring(0, Convert.ToString(Eval("EncryptedSSN")).Length >= 5 ? 5 : Convert.ToString(Eval("EncryptedSSN")).Length) %>
Run Code Online (Sandbox Code Playgroud)
参考文献:
我有以下代码检查日期是否有效.http://jsfiddle.net/uzSU6/36/
如果日期部分,月份部分或年份部分中有空格,则该日期应视为无效.为此,目前我正在检查trim
操作前后字符串的长度.它工作正常.但是有没有更好的方法来检查空格?(例如,使用===
运算符)
function isValidDate(s)
{
var bits = s.split('/');
//Javascript month starts at zero
var d = new Date(bits[2], bits[0] - 1, bits[1]);
if ( isNaN( Number(bits[2]) ) )
{
//Year is not valid number
return false;
}
if ( Number(bits[2]) < 1 )
{
//Year should be greater than zero
return false;
}
//If there is unwanted blank space, return false
if ( ( bits[2].length != $.trim(bits[2]).length ) ||
( bits[1].length != $.trim(bits[1]).length ) …
Run Code Online (Sandbox Code Playgroud) 我有两个问题.第一个查询是直接的,当@MyParam为null时,它可以作为epecte使用.但第二个查询没有返回相同的结果.第二个查询中的错误是什么.
注意:我被要求使用第二种方法,因为客户端要求摆脱"@MyParam IS NULL"检查(在查询1中使用)
QUERY
DECLARE @MyParam INT
DECLARE @MyTable TABLE (EmpID INT)
INSERT INTO @MyTable VALUES (1)
INSERT INTO @MyTable VALUES (2)
INSERT INTO @MyTable VALUES (3)
INSERT INTO @MyTable VALUES (4)
--Query 1
SELECT *
FROM @MyTable M
WHERE M.EmpID = @MyParam OR @MyParam IS NULL
-- Query 2 (Rewrite for performance)
SELECT *
FROM @MyTable M
WHERE M.EmpID = (CASE @MyParam WHEN NULL THEN M.EmpID ELSE @MyParam END)
Run Code Online (Sandbox Code Playgroud) 我有List<Accrual>
和List<Brand>
(和许多其他类似的对象)如下所述.我需要从List<string>
using 创建一个逗号分隔的字符串String.Join
public static string GetCommaSeparatedString(List<string> input)
{
return String.Join(",", input);
}
Run Code Online (Sandbox Code Playgroud)
List<Accrual>
我需要传递List<Description>
给方法的情况下List<Brand>
我需要传递List<Name>
给方法的情况下如何以最简单的代码行以最可读的方式实现它?
注意:我使用的是.Net 4.0
类示例
public class Accrual
{
public string Code { get; set; }
public string Description { get; set; }
}
public class Brand
{
public int Number { get; set; }
public string Name { get; set; }
}
Run Code Online (Sandbox Code Playgroud) 我有以下代码在IE8中工作正常.jquery代码将项添加到多选列表中.但是在Chrome和Safari中这不起作用 - 这些项目不可见
注意:虽然它适用于Firefox,但它正在向右对齐.当我选择任何选项时,它会被隐藏.
我们如何让它在所有四种浏览器中运行?
jsFiddle:http://jsfiddle.net/Lijo/UPR8K/
码
<script src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.9.0.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$(function () {
$("#btnCostPageNumberMagnifingLens").click(function () {
$("#mtxtCostPageDescription").append('<option value=1>My option</option>');
});
});
});
</script>
<style type="text/css">
.floaterleft
{
width:300px;
height:300px;
background-color:gray;
padding:10px 10px 10px 10px;
}
</style>
<body>
<div class="floaterleft">
<div class="headerTextBox">
<input id="txtCostPageNumber" id="CostPageNumber" name="CostPageNumber" style="width: 240px; padding-right: 15px" type="text" value="" />
</div>
<div class="Magenifyingbtn, headerMagnifyButton">
<input type="button" name="btnCostPageNumberMagnifingLens" id="btnCostPageNumberMagnifingLens" class="Magenifyingbtn">
</div>
<select id="mtxtCostPageDescription" name="mtxtCostPageDescription" multiple="multiple" style="width: 290px; padding: 10px 152px 0px 154px; …
Run Code Online (Sandbox Code Playgroud) 我需要增加滑块的尺寸在iOS app
使用创建的Xamarin Forms
。我尝试使用以下重写的自定义渲染器LayoutSubviews
。它增加了尺寸,但是拇指的尺寸却无法接受。如何减小拇指的大小,同时保持滑块的高度增加?
在Android中可能如下所示: 在不影响Android App中拇指的情况下增加滑块的高度
iOS参考:
C#自定义渲染器
[assembly: ExportRenderer(typeof(MySlider), typeof(MySliderRenderer))]
namespace CustomRenderer.iOS
{
class MySliderRenderer : Xamarin.Forms.Platform.iOS.SliderRenderer
{
protected override void OnElementChanged(ElementChangedEventArgs<Slider> e)
{
base.OnElementChanged(e);
Control.MinimumTrackTintColor = UIColor.FromRGB(0xE6, 0x00, 0x06);
Control.ThumbTintColor = UIColor.Red;
Control.MinimumTrackTintColor = UIColor.Orange;
Control.MaximumTrackTintColor = UIColor.Yellow;
//Control.SetThumbImage(UIImage.FromFile("myicon.png"), UIControlState.Normal);
}
public override void LayoutSubviews()
{
base.LayoutSubviews();
CGAffineTransform transform = CGAffineTransform.MakeScale(1f, 12.0f);
transform.TransformSize(this.Frame.Size);
this.Control.Transform = transform;
}
}
}
Run Code Online (Sandbox Code Playgroud)
更新-参考-渲染器
我使用的是Windows XP.我需要找到具有最长路径(路径长度+文件名长度)的文件(在文件夹D:\ Test中).我们如何使用C#找到这个?
是否有像dir,tree等命令来验证这个? 知道如何使用T-SQL做到这一点?
注意:可以使用xp_cmdshell从T-SQL获取目录结构
谢谢
Lijo
你能告诉我TrimNull()是否多余以及我是否应该使用替代方案?
例如:
string username = UsernameTextBox.Text.TrimNull();
Run Code Online (Sandbox Code Playgroud)
我被告知没有定义或扩展方法.也许有一个我错过的参考?
更新:
如果值为NULL readable
,返回的最多方法empty string
是什么?
我有jquery代码将项添加到选择框.在将新项目添加到选择列表之前,我需要清除现有项目.我用的remove
方法.但它不是删除项目.有什么需要改变才能起作用?
jQuery的
<script src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.9.0.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#btnProgramDescriptionMagnifingLens").click(function () {
alert('Clicked');
var costPageDisplayText = 'A';
//REMOVE
var id = $('mtxtProgramDescription option').remove();
//ADD
var o = new Option(costPageDisplayText, 'B');
$(o).html(costPageDisplayText);
$("#mtxtProgramDescription").append(o);
});
});
</script>
Run Code Online (Sandbox Code Playgroud)
CSS
<style type="text/css">
.floaterleft {
width: 300px;
height: 300px;
background-color: gray;
padding: 10px 10px 10px 10px;
}
</style>
Run Code Online (Sandbox Code Playgroud)
HTML
<body>
<div class="floaterleft">
<div class="descriptionLeft">
<label for="Program___Description">Program / Description</label>
</div>
<div class="controlLeft">
<div class="partialFirstLine">
<div class="headerTextBox">
<input id="txtProgramDescription" class="searchTextbox" id="Program" name="Program" type="text" value="" /> …
Run Code Online (Sandbox Code Playgroud) c# ×6
.net ×5
jquery ×3
asp.net ×2
linq-to-sql ×2
sql-server ×2
xamarin ×2
command ×1
generics ×1
javascript ×1
linq ×1
skia ×1
skiasharp ×1
sql ×1
xamarin.ios ×1