Issue: Customer using Dynamic send port configuration without Orchestration. Unable to configure retry settings for Dynamic send port as static retry configuration not possible from BizTalk Admin console.

Fix provided: Create BizTalk custom pipeline component with below property bag properties:
RetryInterval
RetryCount

Read ActualRetryCount value from instance execution and update retry count value at runtime using below piece of code from Execute block in send pipeline component:

public Microsoft.BizTalk.Message.Interop.IBaseMessage Execute(Microsoft.BizTalk.Component.Interop.IPipelineContext pc, Microsoft.BizTalk.Message.Interop.IBaseMessage inmsg)
{
try
{
var actualReadCount = inmsg.Context.Read("ActualRetryCount", "http://schemas.microsoft.com/BizTalk/2003/system-properties");
int intActretryCount = int.Parse(actualReadCount.ToString());
var leftRetryCount = RetryCount - intActretryCount;
if (leftRetryCount < 0) leftRetryCount = 0;
inmsg.Context.Write("RetryCount", "http://schemas.microsoft.com/BizTalk/2003/system-properties&quot;, leftRetryCount);

inmsg.Context.Write("RetryInterval", "http://schemas.microsoft.com/BizTalk/2003/system-properties&quot;, RetryInterval);
}
catch(Exception ex)
{
System.Diagnostics.EventLog.WriteEntry("Retry Setting Error", ex.Message + ".StackTrace:" + ex.StackTrace);
throw ex;
}
return inmsg;
}