本文整理汇总了C#中NSUrl.GetClientTransactionId方法的典型用法代码示例。如果您正苦于以下问题:C# NSUrl.GetClientTransactionId方法的具体用法?C# NSUrl.GetClientTransactionId怎么用?C# NSUrl.GetClientTransactionId使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类NSUrl
的用法示例。
在下文中一共展示了NSUrl.GetClientTransactionId方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: OpenUrl
public override bool OpenUrl (UIApplication application, NSUrl url, string sourceApplication, NSObject annotation)
{
// Make sure the URL comes from Square Register, fail if it doesn't.
if(!sourceApplication.StartsWith("com.squareup.square"))
{
return false;
}
// The response data is encoded in the URL and can be decoded as an SCCAPIResponse.
NSError decodeError;
var response = SCCAPIResponse.ResponseWithResponseURL(url, out decodeError);
string message;
string title;
// Process the response as desired.
if(response.SuccessResponse)
{
title = "Success!";
// Square says the PaymentId and OfflinePaymentId are deprecated and to use TransactionId
// and ClientTransactionId (which is missing from SCCAPIResponse) so I added it by parsing the url like they do
// http://stackoverflow.com/questions/37756795/why-do-ios-and-android-versions-of-the-square-register-sdk-return-different-valu
var clientTransactionId = url.GetClientTransactionId(out decodeError);
message = string.Format("Payment creation succeeded with payment ids {0} {1}, transaction id {2}, client transaction id {3}",
response.PaymentID, response.OfflinePaymentID, response.TransactionID, clientTransactionId);
}
else
{
title = "Error!";
// An invalid response message error is distinct from a successfully decoded error.
var errorToPresent = response != null
? response.Error
: decodeError;
message = string.Format("Payment creation failed with error {0}", errorToPresent.LocalizedDescription);
}
var alertView = new UIAlertView(title, message, null, "OK");
alertView.Show();
return true;
}