当Azure AD最终移到新门户后,Microsoft悄悄取消了直接添加外部用户(从另一个Azure AD或MS帐户)的按钮。现在,唯一的选择似乎是邀请用户作为访客,并向他们发送电子邮件链接。这也表示它们的用户类型为Guest。
在B2C或多租户Intranet方案中,这是禁止的。我们不必通过电子邮件发送邀请来在目录中添加人员。通过B2B电子表格导入添加用户似乎也不会将他们添加为非来宾。
我想在运行时使用反射比较两个值.我正在使用Comparer.Default.Compare(x,y),但我已经意识到这还不够.假设我想比较一个double和一个(1.0 == 10).Comparer.Default将抛出异常,因为它坚持两个值必须是相同的类型(double).但是,存在显式转换,这正是我想要使用的.
那么,为什么我不能只使用Convert.ChangeType?以1.25> 1(双>整数)为例.如果我在1.25上尝试Convert.ChangeType(1.25,typeof(int)),我将得到1,并且当真正的1.25 IS> 1时,上面的断言将失败.
那么,有人可以建议一种调用类型定义的显式比较(如果存在)的方法吗?
谢谢.
我有一个强大的命名集会.
之前已经问过这个问题......但只是出于不同的目的.
我有一个Form基类.当实现类在基类上设置属性时IsBusy.我想阻止与Form的所有交互(设置Enabled = false是不够的 - 我还想阻止移动,调整大小,关闭等......我不希望我的控件看起来被禁用IsBusy == true)并显示弹出窗口加载窗体(带有加载动画的透明无边框形式).
在我的加载动画表单上调用ShowDialog可以阻止调用表单上的交互...但显然我还希望调用表单代码继续执行.
现在我正在使用新的LoadingForm().Show(),然后在我的调用Form上处理WndProc,如果IsBusy == true我压制所有WndProc消息......但我不喜欢这种方法.它也可以防止表单重新绘制,这是我不想要的.
如果我知道所有不同类型的消息都允许正确重新绘制,我不会介意WndProc方法,IsBusy == true但我不这样做.
所以,我的问题是:
有更好的解决方案吗?
要么
罐头有人告诉我应该通过什么WndProc消息?或者在哪里找到词汇表?
谢谢.
我正在尝试使用iTextSharp压缩PDF.有很多页面将彩色图像存储为JPEG(DCTDECODE)...所以我将它们转换为黑白PNG并在文档中替换它们(PNG比JPG的黑白格式小得多)
我有以下方法:
private static bool TryCompressPdfImages(PdfReader reader)
{
try
{
int n = reader.XrefSize;
for (int i = 0; i < n; i++)
{
PdfObject obj = reader.GetPdfObject(i);
if (obj == null || !obj.IsStream())
{
continue;
}
var dict = (PdfDictionary)PdfReader.GetPdfObject(obj);
var subType = (PdfName)PdfReader.GetPdfObject(dict.Get(PdfName.SUBTYPE));
if (!PdfName.IMAGE.Equals(subType))
{
continue;
}
var stream = (PRStream)obj;
try
{
var image = new PdfImageObject(stream);
Image img = image.GetDrawingImage();
if (img == null) continue;
using (img)
{
int width = img.Width;
int height = …Run Code Online (Sandbox Code Playgroud) 愚蠢的问题......但是如果我使用事件源,为什么我还需要域模型。
我有(当然是事件总线)并且
为什么我需要聚合根和域实体?附加层的作用是什么?
.net design-patterns event-driven-design cqrs event-sourcing
I have my LocalConfigurationManager set up as follows:
[DSCLocalConfigurationManager()]
Configuration LCMConfig
{
Node localhost
{
Settings
{
RebootNodeIfNeeded = $true
ActionAfterReboot = 'ContinueConfiguration'
AllowModuleOverwrite = $true
DebugMode = 'All'
}
}
}
LCMConfig
Set-DscLocalConfigurationManager -Path .\LCMConfig -Verbose -Force
Run Code Online (Sandbox Code Playgroud)
Then I kick off a DSC Configuration via
Start-DscConfiguration -Path .\RDS -Verbose -Wait
Run Code Online (Sandbox Code Playgroud)
This configuration sets up an RemoteApp server which involves a whole bunch of steps and several reboots. One of those reboots is happening in a loop over and over …
在DSC中,我如何创建自定义模块(PowerShell 5 DSC类或MOF +脚本)并表示它需要/依赖于另一个DSC资源(如PowerShell Gallery中的xBlah).
在chef中,我可以将这些依赖项放在metadata.rb文件中以表达inter-cookbook依赖项.有没有办法在DSC中表达资源间的依赖关系?
我生成了一个开箱即用的新 Vue 应用程序,如下所示:
? Please pick a preset: Manually select features
? Check the features needed for your project: Choose Vue version, Babel, TS, PWA, Router, Vuex, CSS Pre-processors, Linter, Unit, E2E
? Choose a version of Vue.js that you want to start the project with 3.x (Preview)
? Use class-style component syntax? Yes
? Use Babel alongside TypeScript (required for modern mode, auto-detected polyfills, transpiling JSX)? Yes
? Use history mode for router? (Requires proper server setup for index …Run Code Online (Sandbox Code Playgroud) 如何将DataContractSurrogate用于我的WCF REST服务(使用WebServiceHostFactory托管)?
我没有看到添加一个的方式,即使我添加自定义IOperationBehavior,该WebServiceHost自动覆盖并忽略它.
检查是否以SQL 2000,2005和2008兼容格式启用复制的最简单方法是什么?不需要任何状态信息...只是为了知道它是否已启用数据库.我需要这个,因为如果在尝试执行架构更新之前启用了复制,我希望我的Db Migration代码抛出异常.
谢谢.
我意识到这是一个非常人为的例子,但我已将完整版简化为以下版本,以说明问题:
CREATE VIEW model.Appointments_Partition1
WITH SCHEMABINDING AS
SELECT CONVERT(varchar(15), AppointmentId) as Id,
ap.AppTypeId as AppointmentTypeId,
ap.Duration as DurationMinutes,
ap.AppointmentId as EncounterId,
COUNT_BIG(*) as __count_big
FROM dbo.Appointments ap
JOIN dbo.PracticeCodeTable pct ON SUBSTRING(pct.Code, 1, 1) = ap.ScheduleStatus
AND pct.ReferenceType = 'AppointmentStatus'
WHERE ap.AppTime > 0
GROUP BY CONVERT(varchar(15), AppointmentId), ap.AppTypeId, ap.Duration, ap.AppointmentId
CREATE UNIQUE CLUSTERED INDEX [IX_Appointments_Partition1_Id]
ON model.Appointments_Partition1 ([Id]);
Run Code Online (Sandbox Code Playgroud)
我明白了:
消息8668,级别16,状态0,行12
无法在视图'PracticeRepository.model.Appointments_Partition1'上创建聚簇索引'IX_Appointments_Partition1_Id',因为视图的选择列表包含有关聚合函数或分组列结果的表达式.考虑从聚合函数的结果中删除表达式或从选择列表中分组列.
我包括count_big ...那么为什么这个组出现问题?....我该如何解决这个错误?
我正在尝试创建索引视图,并在创建索引时遇到以下错误:
无法在视图....'上创建索引,因为WHERE或GROUP BY子句中视图引用的列'Amount'不精确。考虑从视图中删除该列,或者精确地更改该列。
有问题的列的数据类型是real我想出现的问题?
解决这个问题的合适方法是什么?我可以在视图SQL中进行转换以消除“不精确性”吗?
视图SQL在下面指定:
EXEC('
CREATE VIEW model.ReceivableBillableParties
WITH SCHEMABINDING
AS
SELECT pf.Id AS Id
, pf.InsuranceId AS InsuranceId
, pf.FinancialInsType AS InsuranceType
, pr.ReceivableId
FROM dbo.Receivables pr
INNER JOIN dbo.Demographics pd ON pd.PersonId = pr.PersonId
INNER JOIN dbo.Appointments ap ON ap.AppointmentId = pr.AppointmentId
INNER JOIN dbo.Financiasl pf ON pf.PersonId = pf.PersonId
INNER JOIN dbo.PracticeInsurers pri ON pri.InsurerId = pf.FinancialInsurerId
WHERE pri.Amount = 0
')
EXEC('
CREATE UNIQUE CLUSTERED INDEX [IX_ReceivableBillableParties]
ON model.ReceivableBillableParties ([Id]);
')
Run Code Online (Sandbox Code Playgroud) 我似乎遇到了临时表垃圾收集的问题:
CREATE PROCEDURE dbo.SetTestTempTable(@value bit)
AS
SET NOCOUNT ON
IF OBJECT_ID('tempdb..#TestTempTable') IS NOT NULL
DROP TABLE #TestTempTable
SELECT @value AS Value INTO #TestTempTable
GO
EXEC dbo.SetTestTempTable 1
SELECT * FROM #TestTempTable
Run Code Online (Sandbox Code Playgroud)
上面的代码产生错误
Msg 208, Level 16, State 0, Line 3
Invalid object name '#TestTempTable'.
Run Code Online (Sandbox Code Playgroud)
我认为因为#TestTempTable在proc退出时会收集垃圾.
有没有办法阻止这种情况?在调用过程之前,我不希望每个调用者都需要显式创建临时表.
更新:我为什么要这样做?
我需要存储一些上下文信息(基本上是一个会话变量).我正在使用CONTEXT_INFO.SQL Azure不支持CONTEXT_INFO,所以我会相应地重构.基本上,我有一个功能:
GetMySessionVariableName()
和一个程序
SetMySessionVariableName(值)
以前,这个函数和过程在内部使用了CONTEXT_INFO,并且工作正常.现在,对于临时表,它没有......我愿意接受关于替代方法的建议.
.net ×4
sql-server ×4
c# ×2
dsc ×2
indexed-view ×2
powershell ×2
t-sql ×2
cqrs ×1
datacontract ×1
indexing ×1
itextsharp ×1
pdf ×1
reflection ×1
replication ×1
typescript ×1
vue.js ×1
wcf ×1
winforms ×1